有没有一种方法可以对Angular内存泄漏执行静态代码分析/分析?

时间:2020-09-17 16:14:22

标签: angular rxjs-observables

让我们说,Angular中取消订阅组件中可观察对象的正确模式是:

Canonical subscribe/unsubscribe

现在让我们说我忘记了ngOnDestroy()中的.unsubscribe()调用。我是否可以设置任何规则以捕获此问题,或者必须严格依赖代码审查?

1 个答案:

答案 0 :(得分:0)

您可以将代码限制为以下特定模式以清除订阅,即

const e = a.pipe(
  takeUntil(this.destroy$)
).subscribe();

然后您可以使用@angular-extensions/lint-rules软件包:

https://www.npmjs.com/package/@angular-extensions/lint-rules

通过安装

npm install @angular-extensions/lint-rules --save-dev

并将以下扩展名添加到您的tslint.json

{
  "extends": [
    "tslint:recommended",
    "@angular-extensions/lint-rules"
  ]
}