* ngFor中的Angular 2函数表达式

时间:2018-07-09 10:09:07

标签: javascript html angular

我需要在* ngFor中使用一个函数表达式,

<select>
  <option *ngFor="let item of getItems(someValue)">
  ..........
  </option>
</select>

在使用类似getItems(someValue)的函数时是否存在任何问题,在该函数中我基于'someValue'获取项目。 这种方法可以吗?还是应该使用其他方式?

2 个答案:

答案 0 :(得分:2)

建议您在绑定到UI时不要直接使用功能,因为这些功能将在每次更改检测生命周期运行时运行,这可能会导致性能下降。

答案 1 :(得分:1)

* ngFor仅应用于与组件中声明的数组绑定。如果此数组随时间变化,那没关系,因为Angular知道何时根据变量重新绘制视图。

您可以在组件中执行以下操作:

printf("%p", &i);

您可以在构造函数或任何其他位置分配值:

public items: YourObject[];

然后只需在* ngFor中使用它,就像这样:constructor(){ this.items = this.getItems(someValue); }