Angular4 树组件的使用


树用的不多,但是有些项目的确需要,那么angular4是如何使用树的,我看过很多树组件,也看群里面有人问一些树的问题,可惜在我做这个树之后,我在众多的树里面选了这颗树,个人感觉挺好用的,功能众多,基本可以郎阔所有需求.

废话不说,先上效果图:

Angular4 树组件的使用_第1张图片



要实现这样的树,首先package.json配置package.json

    "ng2-tree": "^2.0.0-alpha.8",

然后npm install(我说的是在cli环境下的)

接着就是在appmodule中注入:

import {TreeModule} from 'ng2-tree';
TreeviewModule.forRoot(),
接着就是用到的地方了,

html中

  
  
component中

  public fonts: TreeModel = {
    value: '一级菜单',
    children: [
      {
        value: '二级菜单1',
        settings: {
          'static': true
        },
        children: [
          {value: '三级菜单1'},
          {value: '三级菜单2'},
          {value: '三级菜单3'},
          {value: '三级菜单4'},
          {value: '三级菜单5'},
          {
            value: '三级菜单6',
            children: [
              {value: '四级菜单1'},
              {value: '四级菜单2'},
              {value: '四级菜单3'}
            ]
          }
        ]
      },
      {
        value: '二级菜单2',
        children: [
          {value: '三级菜单1'},
          {value: '三级菜单2'},
          {value: '三级菜单3'},
          {value: '三级菜单4'},
          {value: '三级菜单5'},
          {value: '三级菜单6'}
        ]
      },
      {
        value: '二级菜单3',
        // children property is ignored if "loadChildren" is present
        children: [{value: 'I am the font that will be ignored'}],
        loadChildren: (callback) => {
          setTimeout(() => {
            callback([
              {value: '三级菜单1'},
              {value: '三级菜单2'},
              {value: '三级菜单3'},
              {value: '三级菜单4'},
            ]);
          }, 5000);
        }
      }
    ]
  };


  private static logEvent(e: NodeEvent, message: string): void {
    console.log(e);
    // alertify.message(`${message}: ${e.node.value}`);
  }

  public onNodeRemoved(e: NodeEvent): void {
    HomeComponent.logEvent(e, 'Removed');
  }

  public onNodeMoved(e: NodeEvent): void {
    HomeComponent.logEvent(e, 'Moved');
  }

  public onNodeRenamed(e: NodeEvent): void {
    HomeComponent.logEvent(e, 'Renamed');
  }

  public onNodeCreated(e: NodeEvent): void {
    HomeComponent.logEvent(e, 'Created');
  }

  public onNodeSelected(e: NodeEvent): void {
    HomeComponent.logEvent(e, 'Selected');
  }

  public onNodeExpanded(e: NodeEvent): void {
    HomeComponent.logEvent(e, 'Expanded');
  }

  public onNodeCollapsed(e: NodeEvent): void {
    HomeComponent.logEvent(e, 'Collapsed');
  }
具体的方法在这里不详细赘述了!


欢迎加入我的Angular4交流QQ群:560334140,不定期更新Angular4相关干货!同时也是交流问题的地方!

个人微信公众号,欢迎大家关注下,支持下,谢谢!
微信公众号名称:U世界的V梦想
二维码:


你可能感兴趣的:(angular2)