【发布时间】:2020-01-01 20:38:51
【问题描述】:
我的 Angular 应用程序从服务器收到 JSON 格式的响应。我将响应转换为如下模型
let questionListSubscription = this.questionManagementService.questionsArray$.subscribe((result: Result) => {
console.log("received result from question array observable", result);
if (result.result === "success") {
//received response from server
let questionList = JSON.parse(result.additionalInfo) as PracticeQuestionsListAPI;
console.log("got list of questions value ", questionList);
//...
this.questionsFilter["pagination-info"] = questionList["pagination-info"];
//...
}
}
);
上面随机崩溃,错误ERROR TypeError: Cannot set property 'pagination-info' of undefined指向行this.questionsFilter['pagination-info'] = questionList['pagination-info'];
当我再次运行代码时,它起作用了。
上述分配是否有误并可能导致内存泄漏?
【问题讨论】:
-
字段/属性
questionsFilter何时设置?它是否也在与questionsArray的回调同时执行的回调中完成?如果是这样,您有一个竞争条件,您必须链接您的可观察对象,以便回调以特定顺序执行。此外,这与内存泄漏无关,这是一个完全不相关的主题(谷歌它看看它需要什么)。
标签: angular