angular-tree-component的使用详解

网络编程 发布日期:2024/11/14 浏览次数:1

正在浏览:angular-tree-component的使用详解

先上网址吧:https://github.com/500tech/angular-tree-component 这是牛逼哄哄的GitHub页面, http://500tech.github.io/angular-tree-component/ 这就是官网啦。

大背景--首先我是在Angular4下面使用的。

1、install from npm :

npm install --save angular-tree-component

2、导入css

在styles.scss下面导入样式:

@import '~angular-tree-component/dist/angular-tree-component.css';

3、import the module

app.module.ts

import { TreeModule } from 'angular-tree-component';

@NgModule({
 imports: [..., TreeModule],
 ...
})
export class AppModule {
 ...
}

4、app.component.ts里面

nodes = [
  {
   id: 1,
   name: 'root1',
   children: [
    { id: 2, name: 'child1' },
    { id: 3, name: 'child2' }
   ]
  },
  {
   id: 4,
   name: 'root2',
   children: [
    { id: 5, name: 'child2.1' },
    {
     id: 6,
     name: 'child2.2',
     children: [
      { id: 7, name: 'subsub' }
     ]
    }
   ]
  }
 ];
 options = {};

在 app.component.html里面

 <tree-root [nodes]="nodes" [options]="options"></tree-root>

到这里编译出来就可以看到一棵树啦angular-tree-component的使用详解

5、是不是感觉也不是很麻烦嫩,这棵树是真的牛掰,为作者手动点赞。

在option里面可以配置一些参数:

显示内容--displayfield:'name'(以显示名称为例)

id--idField: 'uuid'(如果没有id,会随机生成id,保证每个节点的唯一性)

是否展开节点:isExpandedField:'expanded'(默认是不展开的哟)

actionMapping:自定义事件,

 mouse: {
     dblClick: (tree, node, $event) => {
      if (node.hasChildren) TREE_ACTIONS.TOGGLE_EXPANDED(tree, node, $event);
     }
    }

支持按需加载:

getChildren: this.getChildren.bind(this),

6、events

<tree-root [nodes]="nodes"
  (toggleExpanded)="onEvent($event)"
  (activate)="onEvent($event)"
  (focus)="onEvent($event)"
  (blur)="onEvent($event)">
 </tree-root>

 onEvent = ($event) => console.log($event);

有activate状态就有deactivate状态

7、在option里面添加:useCheckBox:true可以显示checkBox。这时还可以有一个select事件,获取的是子节点。那如果需要获取父节点怎么处理呢,折腾了老半天之后,最终还是找到了方法。。。。

node.partialSelected 可以获取到根节点哟。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。