引用组件链中的ExpressionChangedAfterItHasBeenCheckedError

时间:2018-09-10 10:32:05

标签: angular

ExpressionChangedAfterItHasBeenCheckedError在一系列引用组件中。

我有一项服务正在轮询REST API中的数据并将其存储在缓存中。多个组件使用#引用或@ViewChild链接在一起。第一个组件是从服务读取数据,然后进行计算并将结果传递给下一个。计算出的数据显示在每个组件中,让我控制计算是否正确。

我没有使用ngAfterViewInit。但在最后一个组件中加入ExpressionChangedAfterItHasBeenCheckedError

可以这样表示:

组件A(输出)-先前组件的读取输出->组件B(输出)-先前组件的输出->组件C(输出)-从service-> service(cache)<-poll中读取数据来自API的数据并放入缓存中。

ListComponent.html:16 ERROR Error: ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: 'input: -0.0006'. Current value: 'input: -0.0005943807529616154'.
    at viewDebugError (core.js:9817)
    at expressionChangedAfterItHasBeenCheckedError (core.js:9795)
    at checkBindingNoChanges (core.js:9962)
    at checkNoChangesNodeInline (core.js:14014)
    at checkNoChangesNode (core.js:13984)
    at debugCheckNoChangesNode (core.js:14813)
    at debugCheckDirectivesFn (core.js:14715)
    at Object.eval [as updateDirectives] (ListComponent.html:16)
    at Object.debugUpdateDirectives [as updateDirectives] (core.js:14697)
    at checkNoChangesView (core.js:13822)

0 个答案:

没有答案
相关问题