NG-ZORRO中tree组件的getCheckedNodeList怎么使用

在 NG-ZORRO(Ant Design for Angular) 的 Tree 组件 中,getCheckedNodeList 方法用于获取当前选中的节点列表(包括半选状态节点)。以下是具体用法和示例:

  1. 基本用法
    首先,确保你已通过 ViewChild 获取了 Tree 组件的实例(通常是 NzTreeComponent 或 NzTreeSelectComponent)。

模板中定义 Tree

<nz-tree#tree[nzData]="nodes"nzCheckable[(nzCheckedKeys)]="checkedKeys"(nzCheckBoxChange)="onCheckboxChange($event)"
></nz-tree>

组件中调用方法

import { Component, ViewChild } from '@angular/core';
import { NzTreeComponent, NzTreeNode } from 'ng-zorro-antd/tree';@Component({selector: 'app-your-component',templateUrl: './your-component.html'
})
export class YourComponent {@ViewChild('tree') tree!: NzTreeComponent; // 获取 Tree 实例nodes: NzTreeNode[] = [ /* 你的树节点数据 */ ];checkedKeys: string[] = []; // 选中的节点 key 数组// 获取所有选中的节点(包括半选节点)getCheckedNodes(): void {const checkedNodes: NzTreeNode[] = this.tree.getCheckedNodeList();console.log('Checked Nodes:', checkedNodes);}// 如果需要仅获取全选节点(忽略半选节点)getFullyCheckedNodes(): void {const fullyCheckedNodes: NzTreeNode[] = this.tree.getCheckedNodeList(true);console.log('Fully Checked Nodes:', fullyCheckedNodes);}
}
  1. 方法参数说明
    getCheckedNodeList(includeHalfChecked?: boolean): NzTreeNode[]

includeHalfChecked(可选,默认 false):

false:仅返回 全选节点(用户明确勾选的节点)。

true:返回 全选 + 半选节点(例如父节点因部分子节点被选中而半选)。

  1. 关键注意事项
    节点数据格式

确保 nzData 中的节点数据正确绑定,且每个节点有唯一的 key。例如:

nodes = [new NzTreeNode({title: 'Parent',key: '1',children: [{ title: 'Child 1', key: '1-1' },{ title: 'Child 2', key: '1-2' }]})
];

动态更新问题

如果节点是异步加载的,调用 getCheckedNodeList 前需确保数据已渲染(可在 setTimeout 或数据加载完成的回调中调用)。

与 nzCheckedKeys 的区别

nzCheckedKeys 是双向绑定的选中 key 数组,而 getCheckedNodeList 返回的是完整的节点对象(包含 title、children 等属性)。

  1. 完整示例
// 模板
<button (click)="logCheckedNodes()">打印选中节点</button>// 组件
logCheckedNodes(): void {const allChecked = this.tree.getCheckedNodeList(); // 全选 + 半选const fullyChecked = this.tree.getCheckedNodeList(true); // 仅全选console.log('All Checked Nodes:', allChecked);console.log('Fully Checked Nodes:', fullyChecked);
}

通过以上方法,你可以轻松获取 Tree 组件的选中状态。如果需要进一步处理节点数据,可以通过 NzTreeNode 的 API(如 getParentNode()、getChildren() 等)操作节点关系。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/76089.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

业务流程先导及流程图回顾

一、测试流程回顾 &#xfeff; 1. 备测内容回顾 &#xfeff; 备测内容: 本次测试涵盖买家和卖家的多个业务流程&#xff0c;包括下单流程、发货流程、搜索退货退款、支付抢购、换货流程、个人中心优惠券等。 2. 先测业务强调 &#xfeff; 1&#xff09;测试业务流程 …

从ChatGPT到AutoGPT——AI Agent的范式迁移

一、AI Agent的范式迁移 1. ChatGPT的局限性与Agent化需求 单轮对话的“工具属性” vs. 多轮复杂任务的“自主性” ChatGPT 作为强大的生成式AI,虽然能够进行连贯对话,但本质上仍然是“工具型”AI,依赖用户提供明确的指令,而无法自主规划和执行任务。 人类介入成本过高:提…

【Kafka】分布式消息队列的核心奥秘

文章目录 一、Kafka 的基石概念​主题&#xff08;Topic&#xff09;​分区&#xff08;Partition&#xff09;​生产者&#xff08;Producer&#xff09;​消费者&#xff08;Consumer&#xff09;​ 二、Kafka 的架构探秘​Broker 集群​副本机制​ 三、Kafka 的卓越特性​高…

【蓝桥杯14天冲刺课题单】Day 1

1. 题目链接&#xff1a;19937 艺术与篮球 该题目的难点主要在20240413这个日期需要结束程序跳出循环。最开始将该输出ans的位置放在了for循环之外&#xff0c;此时的日期已经循环完了2024年所有的日期&#xff0c;则最后会统计多而导致结果错误。 AC代码&#xff1a; #incl…

AI人工智能-Jupyter NotbookPycharm:Py开发

安装 命令&#xff1a; pip install jupyter 启动 命令&#xff1a; jupyter notebook 启动成功后&#xff0c;下面网址会默认自动打开当前用户的根目录。 其实这个页面显示的内容&#xff0c;是我们电脑目录C:\Users\当前用户\下的文件夹 我们平常做实验&#xff0c;希望在…

命悬生死线:当游戏遭遇DDoS围剿,如何用AI破局?

文章作者&#xff1a;腾讯宙斯盾DDoS防护团队 一、血色战场&#xff1a;DDoS攻击游戏产业的致命瞬间 全球黑色星期五 这是一场波及全球的“黑色星期五”&#xff0c;起初无人察觉&#xff0c;包括小林。 他刚下班到家就迫不及待打开电脑&#xff0c;准备体验期待已久的《黑神话…

使用HTML5和CSS3实现3D旋转相册效果

使用HTML5和CSS3实现3D旋转相册效果 这里写目录标题 使用HTML5和CSS3实现3D旋转相册效果项目介绍技术栈核心功能实现思路1. HTML结构2. CSS样式解析2.1 基础样式设置2.2 3D效果核心样式2.3 卡片样式 3. JavaScript交互实现3.1 旋转控制3.2 自动播放功能 技术要点总结项目亮点总…

【HTML 基础教程】HTML <head>

HTML <head> 查看在线实例 <title> - 定义了HTML文档的标题 使用 <title> 标签定义HTML文档的标题 <base> - 定义了所有链接的URL 使用 <base> 定义页面中所有链接默认的链接目标地址。 <meta> - 提供了HTML文档的meta标记 使用 <me…

macbook电脑如何清理键盘防止误触

M1芯片的MacBook电脑关机后按任意键开机&#xff0c;是苹果的功能设计。这样设计的目的是为了方便用户&#xff0c;让用户在想要使用电脑时能快速开机。但是清理电脑键盘的时候却成为了一种苦恼 以下是一些清理 MacBook 键盘防止误触的方法&#xff1a; 使用工具锁定键盘 Cle…

Rust 面向对象

Rust 面向对象 引言 Rust 是一种系统编程语言,以其高性能、内存安全和并发支持而受到关注。Rust 的面向对象特性是其强大功能之一,它允许开发者以面向对象的方式构建复杂的应用程序。本文将深入探讨 Rust 的面向对象编程(OOP)特性,包括类的定义、继承、封装和多态等概念…

Redis 源码硬核解析系列专题 - 第二篇:核心数据结构之SDS(Simple Dynamic String)

1. 引言 Redis没有直接使用C语言的标准字符串(以\0结尾的字符数组),而是自定义了SDS(Simple Dynamic String)。SDS是Redis的基础数据结构之一,广泛用于键值存储、命令参数等场景。本篇将深入剖析SDS的实现原理、优势以及源码细节。 2. 为什么不用C标准字符串? C字符串…

python-59-基于python内置库解析html获取标签关键信息

文章目录 1 html.parser1.1 初始化和基础使用1.1.1 handle_starttag(self, tag, attrs)1.1.2 handle_endtag(self, tag)1.1.3 handle_startendtag(self, tag, attrs)1.1.4 handle_data(self, data)1.1.5 handle_comment(self, data)1.2 解析HTML文档的流程2 百度搜索关键词链接…

Java的string默认值

在Java中&#xff0c;String类型的默认值取决于其定义和实例化的方式。 以下是关于String默认值的详细说明 未实例化的String变量‌ 如果定义一个String变量但未对其进行实例化&#xff08;即未使用new关键字或直接赋值&#xff09;&#xff0c;其默认值为:ml-search[null]。这…

高并发系统下的订单号生成服务设计与实现

目录 引言 订单号设计的关键考量因素 基础需求分析 唯一性保障 数据量预估 可读性设计 系统架构考量 分库分表兼容 可扩展性设计 技术选型与比较 性能优化 高可用性保障 实践案例&#xff1a;高并发系统订单号结构设计 结构详解 业务类型标识(2位) 唯一标识部分…

使用LLaMAFactory微调Qwen大模型

一、环境配置与工具安装 1. 硬件要求 GPU:至少1块NVIDIA GPU(推荐RTX 4090/A100/H100,显存≥16GB)。内存:≥64GB系统内存。存储:≥100GB硬盘空间用于模型与数据集存储。2. 软件依赖 Python 3.8+:需安装CUDA支持的PyTorch版本(如torch==2.0.1+cu117)。 依赖库:通过以…

2025-3-29算法打卡

一&#xff0c;回文判定 1.题目描述&#xff1a; 题目描述 给定一个长度为 nn 的字符串 SS。请你判断字符串 SS 是否回文。 输入描述 输入仅 11 行包含一个字符串 SS。 1≤∣S∣≤1061≤∣S∣≤106&#xff0c;保证 SS 只包含大小写、字母。 输出描述 若字符串 SS 为回…

Android 接 Twitter Share ,常见问题及解决方案

1. 应用未授权或授权失败 问题描述:当尝试分享内容到 Twitter 时,应用提示未授权,或者在授权过程中出现错误,无法获取授权码或访问令牌。解决方案 检查 Twitter API 密钥和密钥密码:确保在 Twitter 开发者平台创建应用后,获取的 API 密钥(Consumer Key)和 API 密钥密码…

【数据结构】树与森林

目录 树的存储方法 双亲表示法 孩子表示法 孩子兄弟表示法 树、森林与二叉树的转换 树转换成二叉树 森林转换成二叉树 二叉树转换成森林 树与森林的遍历 树的遍历 森林的遍历 树的存储方法 双亲表示法 这种存储结构采用一组连续空间来存储每个结点&#xff0c;同时…

html5基于Canvas的动态时钟实现详解

基于Canvas的动态时钟实现详解 这里写目录标题 基于Canvas的动态时钟实现详解项目介绍技术栈项目架构HTML结构核心样式设计 核心功能实现1. 时钟表盘绘制2. 时钟指针动画3. 主题切换实现4. 时间格式切换 技术要点总结项目亮点总结参考资料 项目介绍 在这篇文章中&#xff0c;我…

Deepseek API+Python 测试用例一键生成与导出 V1.0.3

** 功能详解** 随着软件测试复杂度的不断提升,测试工程师需要更高效的方法来设计高覆盖率的测试用例。Deepseek API+Python 测试用例生成工具在 V1.0.3 版本中,新增了多个功能点,优化了提示词模板,并增强了对文档和接口测试用例的支持,极大提升了测试用例设计的智能化和易…