angular - Angular PrimeNG p-tree - 如何通过其 id 以编程方式聚焦节点?
问题描述
我有一个带有类别的 p 树。当我使用类别 ID 导航到类别页面时,我希望 p-tree 专注于所需的类别。
HTML
<p-tree *ngIf="categoriesTree" [value]="categoriesTree" selectionMode="single" [selection]="getselectedCategory()" (onNodeSelect)="categorySelected($event)" ></p-tree>
我试图在 [selection] attr 处设置一个函数并返回一个节点,但它不起作用。
功能
public getselectedCategory(){
this.sortService.CategoryObjectOut.subscribe(val=>{
for(let i =0; i< this.categoriesTree.length;i++){
if(this.categoriesTree[i] == val.node){
this.selectedCategory=val
return this.selectedCategory.node;
}
}
})
}
例如,如果我设置[selected]="categoriesTree[0]"
它工作正常。但我想动态地做到这一点。
问题是什么 ?
解决方案
事实上,为了能够自动关注一个节点,您不需要它的 ID,在 Prime 版本 7.0.5 中,您可以使用“selection”属性并将其与您的节点相同以关注。
更多细节:
在树-ex.html 中:
<p-tree
[value]="nodes"
selectionMode ="single"
[(selection)] ="selectedNode">
</p-tree>
在树-ex.ts 中:
selectedNode :TreeNode;
//do something with selectedNode
selectedNode = this.selectedNode;
推荐阅读
- python - 必须将 NCCL dll (Windows 10) 放在哪里才能在 Python 中使用 tensorflow?
- javascript - 反应覆盖中的模态
- android - ADB 更改系统分辨率,但不适用于应用程序
- flutter - 运行颤振时,我不断收到 pubsepc.yaml 错误
- node.js - 对引用 id 相等的文档字段求和
- google-apps-script - 如何在 Google Apps 脚本中使用全局变量?
- node.js - 在 Mongoose 中,使用保存方法重复键错误收集
- actions-on-google - 将应用操作与对话操作进行比较
- arrays - Newb:分配:C Prog:将 getchar() 输入保存到二维数组中
- javascript - Javascript Promise.all 执行顺序问题