отключить флажок в компоненте angular дерева - PullRequest
0 голосов
/ 14 июля 2020

Я не могу найти способ отключить узел флажка с помощью компонента дерева angular. Нет возможности пометить дерево как отключенное, чтобы флажки, появляющиеся вместе с данными дерева, были отключены. Пожалуйста, предложите

1 Ответ

0 голосов
/ 25 августа 2020

Отключение узла может быть выполнено с помощью actionMapping внутри атрибута параметров https://angular2-tree.readme.io/v1.2.0/docs/options. Здесь событие щелчка мыши может быть перезаписано.

<Tree  [nodes]="nodes"  [options]="treeOptions"></Tree>

В моих данных дерева Я сохранил атрибут isSelectable на каждом узле, который равен true|false. В случае истины я продолжаю выбирать узел, иначе он ничего не делает. Вот полные параметры, которые я передаю компоненту tree.

public options: ITreeOptions = {
    isExpandedField: 'expanded',
    idField: 'uuid',
    getChildren: this.getChildren.bind(this),
    actionMapping: {
      mouse: {
        click: (tree, node, $event) => {
          if ( node.data.isSelectable ) {
            this.isNodeSelected.emit(node.data);
            this.alreadySelected = true;
            this.preSelected.tree = tree;
            this.preSelected.node = node;
            this.preSelected.event = $event;
            TREE_ACTIONS.ACTIVATE(this.preSelected.tree, this.preSelected.node, this.preSelected.event);
          }
        }
      }
    },
    nodeHeight: 23,
    allowDrag: (node) => {
      return false;
    },
    allowDrop: (node) => {
      return false;
    }
};
...