您好,登錄后才能下訂單哦!
先上網(wǎng)址吧:https://github.com/500tech/angular-tree-component 這是牛逼哄哄的GitHub頁面, http://500tech.github.io/angular-tree-component/ 這就是官網(wǎng)啦。
大背景--首先我是在Angular4下面使用的。
1、install from npm :
npm install --save angular-tree-component
2、導(dǎo)入css
在styles.scss下面導(dǎo)入樣式:
@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>
到這里編譯出來就可以看到一棵樹啦
5、是不是感覺也不是很麻煩嫩,這棵樹是真的牛掰,為作者手動點贊。
在option里面可以配置一些參數(shù):
顯示內(nèi)容--displayfield:'name'(以顯示名稱為例)
id--idField: 'uuid'(如果沒有id,會隨機(jī)生成id,保證每個節(jié)點的唯一性)
是否展開節(jié)點:isExpandedField:'expanded'(默認(rèn)是不展開的喲)
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狀態(tài)就有deactivate狀態(tài)
7、在option里面添加:useCheckBox:true可以顯示checkBox。這時還可以有一個select事件,獲取的是子節(jié)點。那如果需要獲取父節(jié)點怎么處理呢,折騰了老半天之后,最終還是找到了方法。。。。
node.partialSelected 可以獲取到根節(jié)點喲。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。