Rav*_*ant 4 lifecycle components angular
我已经在Angular应用中创建了一个日期选择器组件。当我在* ngIf中使用它时,出现错误ExpressionChangedAfterItHasBeenCheck。让我使用两个分量P和C。P作为父输入字段。
<INPUT [p]=" '' ">
Run Code Online (Sandbox Code Playgroud)
C作为子下拉菜单在INPUT之后追加。
<DIV>
// drop-down code
</DIV>
Run Code Online (Sandbox Code Playgroud)
当在* ngIf中动态创建P时,出现了这样的错误ExpressionChangedAfterItHasBeenCheck。
正在运行的Angular应用程序是一棵组件树。在变更检测期间,Angular对每个组件执行检查,该组件包括按指定顺序执行的以下操作:
每次操作后,Angular都会记住用于执行操作的值。它们存储在组件视图的oldValues属性中。对所有组件Angular进行检查之后。
因此,最后,我们需要使其与Angular同步,并通过生命周期挂钩内的setTimeout来解决它。
ngOnInit() {
setTimeout(() => {
// Your Code
});
}
ngAfterViewInit() {
setTimeout(() => {
// Your Code
});
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1372 次 |
| 最近记录: |