在Angular 8中,如果在使用runOutsideAngular
方法时遇到“无法读取未定义的属性”错误,通常是因为你没有正确导入NgZone
模块。
要解决这个问题,你需要确保在使用runOutsideAngular
方法之前正确导入NgZone
模块。你可以按照以下步骤进行操作:
.ts
文件)。import { NgZone } from '@angular/core';
ngZone
属性:constructor(private ngZone: NgZone) {
// 构造函数中的其他代码
}
runOutsideAngular
方法,例如:myMethod() {
this.ngZone.runOutsideAngular(() => {
// 在此处执行不需要Angular变更检测的代码
});
}
请确保在使用runOutsideAngular
方法时,将需要在Angular变更检测之外执行的代码放在回调函数中。
这样,你就可以在Angular 8中正确使用runOutsideAngular
方法,而不会遇到“无法读取未定义的属性”错误了。