我正在创建一个指令,该指令根据用户的时区格式化日期。用户可以选择通过页面上的设置下拉菜单更新他们的时区。因此,该指令订阅时区更新和更改更新。
ngOnInit() {
this.timezoneUpdatedSubscription = this.commonService.timezoneUpdated.subscribe(() => {
this.el.nativeElement.innerHTML = moment(this.localDate).tz(this.commonService.usersTimezone).format(this.format);
})
}
ngOnDestroy() {
if (this.timezoneUpdatedSubscription) {
this.timezoneUpdatedSubscription.unsubscribe();
}
}
可能的问题是该指令可能会在一个页面上使用很多次,可能会使用 50 次,但有时可能会使用 200 多次。这意味着一次可能有 200 多个订阅。
这会导致一次更新大量元素的性能问题吗?我看不到任何文件可以建议任何一种方式。