AngularJS2:模板内的NgFor模板无法正常工作

时间:2017-01-12 14:03:57

标签: javascript angularjs angular typescript primeng

更新:这是Angular< = 2.4.1中的错误。请参阅下面的“证明”帖子。

我在AngularJS(2.2)中遇到问题,在模板内部使用For循环模板来显示数组中的数组。

参见下面的MWE。第一张图显示了开始状态,如果按下按钮一次,我会得到所需的输出,但是如果我再次按下按钮,我会得到奇怪的输出(FIELD:2 SUBFIELD:2预期)

初始化后,for循环似乎不再正常工作。我该如何解决这个问题?

如果我删除了内部For模板,我只能再次获得所需的输出。

extension of the C semantics

enter image description here

enter image description here

MWE

{{1}}

2 个答案:

答案 0 :(得分:0)

怎么样:

<template *ngFor="let item of dataItem.array">  
        SUBFIELD: {{item.item}}
</template>

答案 1 :(得分:0)

我找到了根本原因。这是AngularJS&lt; = 2.4.1中的错误。这Plunker snippet 证明了这个问题。在按钮上单击多次,以查看效果。

如果您复制/分叉代码段并通过更改systemjs.config.js更改此Plunker代码段中的Angualar版本:

var V = '2.4.1';

var V = '2.4.2';

您会看到按钮上的多次单击现在可以产生所需的效果,而无需进行其他修改。

但是,我无法在Angular 2更改日志中找到相关的bug。但是,有一些与模板/ ngFor相关的修复报告。