首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何快速扩展PrimeNG treeTable?

如何快速扩展PrimeNG treeTable?
EN

Stack Overflow用户
提问于 2018-04-04 12:08:03
回答 1查看 2.3K关注 0票数 0

我在我的角度应用程序中使用PrimeNG treeTable。而且treeTable数据非常大。每个项目有200多个项目。

如下所示:

代码语言:javascript
复制
{
    "data":
    [  
        {  
            "data":{  
                "name":"Documents",
                "size":"75kb",
                "type":"Folder"
            },
            "children":[
                {  
                    "data":{  
                        "name":"Work",
                        "size":"55kb",
                        "type":"Folder"
                    },
                    "children":[  
                        {  
                            "data":{  
                                "name":"Expenses.doc",
                                "size":"30kb",
                                "type":"Document"
                            }
                        },
                        {  
                            "data":{  
                                "name":"Resume.doc",
                                "size":"25kb",
                                "type":"Resume"
                            }
                        }
                    ]
                },
                {  
                    "data":{  
                        "name":"Home",
                        "size":"20kb",
                        "type":"Folder"
                    },
                    "children":[  
                        {  
                            "data":{  
                                "name":"Invoices",
                                "size":"20kb",
                                "type":"Text"
                            }
                        }
                    ]
                }
            ]
        },
        {  
            "data":{  
                "name":"Pictures",
                "size":"150kb",
                "type":"Folder"
            },
            "children":[  
                {  
                    "data":{  
                        "name":"barcelona.jpg",
                        "size":"90kb",
                        "type":"Picture"
                    }
                },
                {  
                    "data":{  
                        "name":"primeui.png",
                        "size":"30kb",
                        "type":"Picture"
                    }
                },
                {  
                    "data":{  
                        "name":"optimus.jpg",
                        "size":"30kb",
                        "type":"Picture"
                    }
                }
            ]
        }
    ]
}

我的作用是这个。我想把一切都扩大。我使用递归。,但它花了很多时间。

,那么你有更好的算法吗?

代码语言:javascript
复制
 expandAll(e) {
    console.log(e);
    this.expand(e.node.children);
  }


  expand(element) {
    element.forEach(element => {
      element.expanded = true;
      this.expand(element.children);
    });
  }
}

 <p-treeTable[value]="treedataList" (onNodeExpand) = "expandAll($event)"></p-treeTable>

这里是PrimeNG可树链接: https://www.primefaces.org/primeng/#/treetable

EN

回答 1

Stack Overflow用户

发布于 2019-03-08 01:05:16

可以将展开作为节点项的属性,如下所示:

代码语言:javascript
复制
{  
    "data":{  
        "name":"Home",
        "size":"20kb",
        "type":"Folder"
    },
    "children":[  
        {  
            "data":{  
                "name":"Invoices",
                "size":"20kb",
                "type":"Text"
            },
            expanded: true
        }
    ],
    expanded: true
}

树表使用以下节点接口:

代码语言:javascript
复制
export interface TreeNode {
    data?: any;
    children?: TreeNode[];
    leaf?: boolean;
    expanded?: boolean;
}

https://www.primefaces.org/primeng/#/treetable

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49650623

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档