【问题标题】:angular 7 get Parent node value from ngx-treeviewangular 7 从 ngx-treeview 获取父节点值
【发布时间】:2019-05-05 08:20:47
【问题描述】:

我使用了 Angular 7 和 ngx-treeview 组件。

我使用了 decoupleChildFromParent= true 的配置。

从这个树视图我们只得到子树的值。 我要获取父节点值。

这是我的 html 代码:

  <ng-template #itemTemplate let-item="item" let-onCollapseExpand="onCollapseExpand" let-onCheckedChange="onCheckedChange">
      <div class="form-inline row-item">

        <i *ngIf="item.children" (click)="onCollapseExpand()" aria-hidden="true" class="fa" [class.fa-caret-right]="item.collapsed"
          [class.fa-caret-down]="!item.collapsed"></i>
        <div class="form-check">
          <input type="checkbox" class="form-check-input" [(ngModel)]="item.checked" (ngModelChange)="onCheckedChange()" [disabled]="item.disabled"
            [indeterminate]="item.indeterminate" />
          <label class="form-check-label" (click)="item.checked = !item.checked; onCheckedChange()">
            {{item.text}}
          </label>

        </div>
      </div>
    </ng-template>

    <div class="row">
      <div class="col-6">
        <div class="form-group">
          <div class="d-inline-block">
            <ngx-treeview [items]="items" [itemTemplate]="itemTemplate" (selectedChange)="onSelectedChange($event)">
            </ngx-treeview>
          </div>
        </div>
      </div>

    </div>

我在这段代码中使用了 onSelectedChange 函数:

 onSelectedChange(downlineItems: DownlineTreeviewItem[]) {
            this.rows = [];
            downlineItems.forEach(downlineItem => {
                const item = downlineItem.item;
                const value = item.value;
                const texts = [item.text];
                let parent = downlineItem.parent
                while (!isNil(parent)) {
                    texts.push(parent.item.text);
                    parent = parent.parent;
                }
                const reverseTexts = reverse(texts);
                const row = `${reverseTexts.join(' -> ')} : ${value}`;
                this.rows.push(row);
                this.rowsSelect=value;
            });
        }

当我选中父复选框时,selectedChange 事件触发了空值数组。

我想在没有选择子项时检索所选父项的值

【问题讨论】:

标签: angular ngx-treeview


【解决方案1】:
import {TreeviewHelper} from 'ngx-treeview';

TreeviewHelper.findParent(rootItem, item);

【讨论】:

  • 如果你也能解释一下代码会更有用。不要只是粘贴代码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-12
相关资源
最近更新 更多