如何遍历ViewContainerRef中的组件列表?

时间:2018-03-19 15:42:06

标签: javascript angular angular5

我正在尝试在ViewContainerRef内的组件列表上实现键盘导航,而不知道实际存在多少组件。

当前方法:现在在ViewContainerRef中添加组件时,我将视图中的组件索引和ComponentRef一起存储为列表中的对象,即:

{ component : ComponentRef<any>, index: number }

我在indexOf上执行ViewContainerRef索引。      对于键盘导航,我正在收听事件并遍历我在上面创建的列表并跟踪当前所选组件的内容。  这可以用更好的方式完成吗?

1 个答案:

答案 0 :(得分:0)

ViewContainerRef有吸气剂lengthget[]

selectedIndex:number = 0;

cursorUp() {
  if(this.selectedIndex > 0) {
    this.selectedIndex--;
  }
  console.log('selectedComponent', this.vcRef[this.selectedIndex]);
}

cursorDown() {
  if(this.selectedIndex < this.vcRef.length - 1) {
    this.selectedIndex++;
  }
  console.log('selectedComponent', this.vcRef[this.selectedIndex]);
}