Angular 14 Mat Tree如何仅获取选中的孙节点值
解决方案
1. 确定孙节点的判断依据
你的树形结构里,孙节点是最底层节点(没有子节点),或者可以通过节点的level字段区分(比如父节点level=0、子节点level=1、孙节点level=2)。
2. 修改提交方法的筛选逻辑
打开tree-nested-overview-example.ts文件,找到submit方法,替换成以下代码:
submit() { // 筛选出无下属子节点的孙节点(根据你的数据结构调整判断条件) const selectedSubChildren = this.selectedNodes.filter(node => !node.children || node.children.length === 0); // 若用level字段判断,可改成: // const selectedSubChildren = this.selectedNodes.filter(node => node.level === 2); console.log('选中的孙节点:', selectedSubChildren); // 后续直接用selectedSubChildren作为提交数据即可 }
3. 逻辑验证
勾选子节点时,其下所有孙节点会被自动选中,提交时只会提取这些孙节点;若勾选父节点,其下所有子、孙节点都会被选中,此时筛选逻辑依然会只保留最底层的孙节点,完全符合需求。
内容的提问来源于stack exchange,提问作者Govindamma
相关产品推荐
相关产品推荐

