angular-tree-component的使用详解


Posted in Javascript onJuly 30, 2018

先上网址吧: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 可以获取到根节点哟。

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

Javascript 相关文章推荐
JS 文件传参及处理技巧分析
May 13 Javascript
utf-8编码引起js输出中文乱码的解决办法
Jun 23 Javascript
jQuery的基本概念与高级编程
May 14 Javascript
编写高性能Javascript代码的N条建议
Oct 12 Javascript
jQuery flip插件实现的翻牌效果示例【附demo源码下载】
Sep 20 Javascript
wap手机端解决返回上一页的js实例
Dec 08 Javascript
JavaScript利用正则表达式替换字符串中的内容
Dec 12 Javascript
flag和jq on 的绑定多个对象和方法(必看)
Feb 27 Javascript
javascript高级模块化require.js的具体使用方法
Oct 31 Javascript
从vue源码解析Vue.set()和this.$set()
Aug 30 Javascript
详解vue-cli下ESlint 配置说明
Sep 03 Javascript
vue实现禁止浏览器记住密码功能的示例代码
Feb 03 Vue.js
使用vue-router为每个路由配置各自的title
Jul 30 #Javascript
JavaScript实现数组全排列、去重及求最大值算法示例
Jul 30 #Javascript
在react中使用vuex的示例代码
Jul 30 #Javascript
使用JS判断移动端手机横竖屏状态
Jul 30 #Javascript
详解如何在微信小程序中愉快地使用sass
Jul 30 #Javascript
详解JSON Web Token 入门教程
Jul 30 #Javascript
JS中Promise函数then的奥秘探究
Jul 30 #Javascript
You might like
PHP中使用数组实现堆栈数据结构的代码
2012/02/05 PHP
CodeIgniter上传图片成功的全部过程分享
2013/08/12 PHP
PHP防止post重复提交数据的简单例子
2014/06/07 PHP
浅谈使用 Yii2 AssetBundle 中 $publishOptions 的正确姿势
2017/11/08 PHP
laravel框架数据库操作、查询构建器、Eloquent ORM操作实例分析
2019/12/20 PHP
JavaScript 学习笔记(四)
2009/12/31 Javascript
利用百度地图JSAPI生成h7n9禽流感分布图实现代码
2013/04/15 Javascript
自己动手手写jQuery插件总结
2015/01/20 Javascript
原生JS和JQuery动态添加、删除表格行的方法
2015/05/28 Javascript
JavaScript声明变量名的语法规则
2015/07/10 Javascript
JS实现霓虹灯文字效果的方法
2015/08/06 Javascript
解决angular的$http.post()提交数据时后台接收不到参数值问题的方法
2015/12/10 Javascript
详解javascript跨浏览器事件处理程序
2016/03/27 Javascript
js阻止冒泡和默认事件(默认行为)详解
2016/10/20 Javascript
关于Jquery中的bind(),on()绑定事件方式总结
2016/10/26 Javascript
easyUI实现类似搜索框关键词自动提示功能示例代码
2016/12/27 Javascript
bootstrap中模态框、模态框的属性实例详解
2017/02/17 Javascript
Vue面试题及Vue知识点整理
2018/10/07 Javascript
[03:16]DOTA2完美大师赛小组赛精彩集锦
2017/11/22 DOTA
在Python中使用SQLite的简单教程
2015/04/29 Python
python socket多线程通讯实例分析(聊天室)
2016/04/06 Python
Python 出现错误TypeError: ‘NoneType’ object is not iterable解决办法
2017/01/12 Python
基于python二叉树的构造和打印例子
2019/08/09 Python
将python文件打包exe独立运行程序方法详解
2020/02/12 Python
Python matplotlib读取excel数据并用for循环画多个子图subplot操作
2020/07/14 Python
玩具反斗城天猫官方旗舰店:享誉全球的玩具店
2017/10/10 全球购物
Armor Lux法国官方网站:水手服装、成衣和内衣
2020/05/26 全球购物
如何清空Session
2015/02/23 面试题
摄影助理岗位职责
2014/02/07 职场文书
计算机毕业生自荐信范文
2014/03/23 职场文书
食品安全标语
2014/06/07 职场文书
优秀应届生求职信
2014/06/16 职场文书
2014年客服工作总结与计划
2014/12/09 职场文书
2015年少先队活动总结
2015/03/25 职场文书
MySQL 使用SQL语句修改表名的实现
2021/04/07 MySQL
Python 恐龙跑跑小游戏实现流程
2022/02/15 Python