angular-tree-component的使用详解

 更新时间:2018年07月30日 10:46:04   作者:Vibge  
这篇文章主要介绍了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>

到这里编译出来就可以看到一棵树啦

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 可以获取到根节点哟。

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

相关文章

  • 完美实现js选项卡切换效果(二)

    完美实现js选项卡切换效果(二)

    这篇文章主要为大家详细介绍如何完美实现js选项卡切换效果,通过设置定时器实现延时0.5s切换选项卡,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • 微信小程序虚拟列表的实现示例

    微信小程序虚拟列表的实现示例

    大部分小程序都会有这样的需求,页面有长列表,需要下拉到底时请求后台数据,一直渲染数据,当数据列表长时,会发现明显的卡顿,页面白屏闪顿现象,那么如何实现小程序虚拟列表,感兴趣的可以了解一下
    2021-07-07
  • JavaScript实现的encode64加密算法实例分析

    JavaScript实现的encode64加密算法实例分析

    这篇文章主要介绍了JavaScript实现的encode64加密算法,实例分析了javascript处理encode64编码针对字符串加密的技巧,非常简洁实用,需要的朋友可以参考下
    2015-04-04
  • JS限定手机版中图片大小随分辨率自动调整的方法

    JS限定手机版中图片大小随分辨率自动调整的方法

    下面小编就为大家带来一篇JS限定手机版中图片大小随分辨率自动调整的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • JavaScript动态添加css样式和script标签

    JavaScript动态添加css样式和script标签

    这篇文章主要介绍了JavaScript动态添加css样式和script标签的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-07-07
  • js实现精确到毫秒的倒计时效果

    js实现精确到毫秒的倒计时效果

    这篇文章主要为大家详细介绍了js实现精确到毫秒的倒计时效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • bootstrap tooltips在 angularJS中的使用方法

    bootstrap tooltips在 angularJS中的使用方法

    这篇文章主要介绍了bootstrap tooltips在 angularJS中的使用 ,需要的朋友可以参考下
    2019-04-04
  • 浅析javascript函数表达式

    浅析javascript函数表达式

    这篇文章主要向大家详细介绍了javascript函数表达式,帮助大家理解javascript函数表达式,感兴趣的朋友可以参考一下
    2016-02-02
  • JS深拷贝的4种实现方法

    JS深拷贝的4种实现方法

    对于js中的对象的深拷贝在项目的开发中比较常用到,本文就来介绍一下JS深拷贝的4种实现方法,具有一定的参考价值,感兴趣的可以了解一下
    2023-10-10
  • 微信小程序骨架屏的应用与实现步骤详细记录

    微信小程序骨架屏的应用与实现步骤详细记录

    所谓骨架屏就是在页面数据尚未加载前先给用户展示出页面的大致结构,直到请求数据返回后再渲染页面,补充进需要显示的数据内容,这篇文章主要给大家介绍了关于微信小程序骨架屏的应用与实现的相关资料,需要的朋友可以参考下
    2022-05-05

最新评论