我有一个通过 getter 公开信号的服务。 getter 直接在 HTML 模板中使用,但我担心性能。由于 Angular 的更改检测在每次重新渲染时都会调用 getter,我怀疑这可能会导致效率低下。
这是我当前的实现: 服务:
signal = signal();
getSignal() {
return this.signal;
}
模板:
<h1>
{{ service.getSignal()() }}
</h1>
我的问题是:
你没有 getter,getter 是 get+space+name()
get Signal() {
return this.signal;
}
由于 Angular 中的缺陷是公共变量,因此您可以在组件中写入(始终服务
service
是公共的)
{{service.signal()}}
如果您的服务是私有的,您可以创建一个吸气剂,但是在组件中
get signalService()
{
return this.service.signal()
}
并使用
{{signalService}}
确实,吸气剂在性能中具有不稳定性相关性