クラス IgxTreeComponent

IgxTreeComponent を使用すると、開発者は一連のノードを階層的に表示できます。

igxmodule

IgxTreeModule

igxkeywords

tree

igxtheme

igx-tree-theme

igxgroup

Grids & Lists

備考:

Angular Tree コンポーネントを使用すると、ユーザーはツリービュー構造で階層データを表現し、親子関係を維持したり、 対応するデータ モデルなしで静的ツリービュー構造を定義したりできます。 その主な目的は、エンドユーザーが階層データ構造内を視覚化してナビゲートできるようにすることです。 UI for Angular Tree コンポーネントは、組み込みのチェックボックス、組み込みのキーボード ナビゲーションなどを通じて、 ロードオンデマンド機能、項目のアクティブ化、項目の bi-state およびカスケード選択も提供します。

例:
<igx-tree>
<igx-tree-node>
I am a parent node 1
<igx-tree-node>
I am a child node 1
</igx-tree-node>
...
</igx-tree-node>
...
</igx-tree>

階層

実装

  • IgxTree
  • OnInit
  • AfterViewInit
  • OnDestroy

Index

コンストラクタ

  • new IgxTreeComponent(navService: IgxTreeNavigationService, selectionService: IgxTreeSelectionService, treeService: IgxTreeService, element: ElementRef<HTMLElement>, _displayDensityOptions?: IDisplayDensityOptions): IgxTreeComponent

プロパティ

activeNodeChanged: EventEmitter<IgxTreeNode<any>> = ...

アクティブなノードが変更されたときに発生します。

例:
<igx-tree (activeNodeChanged)="activeNodeChanged($event)"></igx-tree>
animationSettings: ToggleAnimationSettings = ...

ブランチが展開/折りたたみ時に使用するアニメーション設定を取得/設定します。

<igx-tree [animationSettings]="customAnimationSettings">
</igx-tree>
const animationSettings: ToggleAnimationSettings = {
openAnimation: growVerIn,
closeAnimation: growVerOut
};
this.tree.animationSettings = animationSettings;
cssClass: string = 'igx-tree'
expandIndicator: TemplateRef<any>

ノードの展開インジケーターに使用されるカスタム テンプレート

<igx-tree>
<ng-template igxTreeExpandIndicator let-expanded>
<igx-icon>{{ expanded ? "close_fullscreen": "open_in_full"}}</igx-icon>
</ng-template>
</igx-tree>
nodeCollapsed: EventEmitter<ITreeNodeToggledEventArgs> = ...

ノードが完了した後にノードが縮小されたときに発生されます。

例:
<igx-tree (nodeCollapsed)="handleNodeCollapsed($event)">
</igx-tree>
public handleNodeCollapsed(event: ITreeNodeToggledEventArgs) {
const collapsedNode: IgxTreeNode<any> = event.node;
console.log("Node is collapsed: ", collapsedNode.data);
}
nodeCollapsing: EventEmitter<ITreeNodeTogglingEventArgs> = ...

ノードが縮小するときに終了する前に発生します。

<igx-tree (nodeCollapsing)="handleNodeCollapsing($event)">
</igx-tree>
public handleNodeCollapsing(event: ITreeNodeTogglingEventArgs) {
const collapsedNode: IgxTreeNode<any> = event.node;
if (collapsedNode.alwaysOpen) {
event.cancel = true;
}
}
nodeExpanded: EventEmitter<ITreeNodeToggledEventArgs> = ...

ノードが完了した後にノードが展開されたときに発生されます。

<igx-tree (nodeExpanded)="handleNodeExpanded($event)">
</igx-tree>
public handleNodeExpanded(event: ITreeNodeToggledEventArgs) {
const expandedNode: IgxTreeNode<any> = event.node;
console.log("Node is expanded: ", expandedNode.data);
}
nodeExpanding: EventEmitter<ITreeNodeTogglingEventArgs> = ...

ノードが展開するときに終了する前に発生します。

<igx-tree (nodeExpanding)="handleNodeExpanding($event)">
</igx-tree>
public handleNodeExpanding(event: ITreeNodeTogglingEventArgs) {
const expandedNode: IgxTreeNode<any> = event.node;
if (expandedNode.disabled) {
event.cancel = true;
}
}
nodeSelection: EventEmitter<ITreeNodeSelectionEvent> = ...

ノードの選択が操作によって変更されたときに発生されます。

<igx-tree (nodeSelection)="handleNodeSelection($event)">
</igx-tree>
public handleNodeSelection(event: ITreeNodeSelectionEvent) {
const newSelection: IgxTreeNode<any>[] = event.newSelection;
const added: IgxTreeNode<any>[] = event.added;
console.log("New selection will be: ", newSelection);
console.log("Added nodes: ", event.added);
}
onDensityChanged: EventEmitter<IDensityChangedEventArgs> = ...
singleBranchExpand: boolean = false

ツリーがブランチ展開を処理する方法を取得または設定します。 true に設定すると、一度に展開できるブランチは 1 つのみで、その他のブランチはすべて縮小されます。

<igx-tree [singleBranchExpand]="true">
...
</igx-tree>
const tree: IgxTree = this.tree;
this.tree.singleBranchExpand = false;

アクセサー

メソッド

  • 渡されたすべてのノードを縮小します。 渡されたノードがない場合、すべてのノードを縮小します。

    パラメーター

    • オプション nodes: IgxTreeNode<any>[]

      nodes to be collapsed

      const targetNodes: IgxTreeNode<any> = this.tree.findNodes(true, (_data: any, node: IgxTreeNode<any>) => node.data.collapsible);
      tree.collapseAll(nodes);

    返却 void

  • 渡されたすべてのノードを展開します。 渡されたノードがない場合、すべてのノードを展開します。

    パラメーター

    • オプション nodes: IgxTreeNode<any>[]

      nodes to be expanded

      const targetNodes: IgxTreeNode<any> = this.tree.findNodes(true, (_data: any, node: IgxTreeNode<any>) => node.data.expandable);
      tree.expandAll(nodes);

    返却 void

  • 渡された searchTerm に一致するすべてのノードを返します。 ノードに対して検索語を評価するためのカスタム比較関数を受け入れます。

    備考:

    デフォルトの検索では、渡された searchTerm をノードの data 入力と比較します。 比較演算子なしで findNodes を使用する場合、すべてのノードに data が渡されることを確認してください。

    パラメーター

    • searchTerm: any

      The data of the searched node

    • オプション comparer: IgxTreeSearchResolver

      A custom comparer function that evaluates the passed searchTerm against all nodes.

    返却 IgxTreeNodeComponent<any>[]

    検索に一致するノードの配列。ノードが見つからない場合は null

    <igx-tree>
    <igx-tree-node *ngFor="let node of data" [data]="node">
    {{ node.label }}
    </igx-tree-node>
    </igx-tree>
    public data: DataEntry[] = FETCHED_DATA;
    ...
    const matchedNodes: IgxTreeNode<DataEntry>[] = this.tree.findNodes<DataEntry>(searchTerm: data[5]);

    Using a custom comparer

    public data: DataEntry[] = FETCHED_DATA;
    ...
    const comparer: IgxTreeSearchResolver = (data: any, node: IgxTreeNode<DataEntry>) {
    return node.data.index % 2 === 0;
    }
    const evenIndexNodes: IgxTreeNode<DataEntry>[] = this.tree.findNodes<DataEntry>(null, comparer);
  • ngDoCheck(): void