Angular 这是一个好习惯吗

Angular is it a good practice

我正在制作一个中型应用程序,我想知道我在数据绑定方面的做法。 我以这种方式将数据直接从服务传递到模板:

      <ion-list class="list-preview ion-padding padding-top-0" lines="none" *ngIf="caseService.activeCase.value.values">
        <ion-item *ngFor="let caseItem of caseService.activeCase.value.getValues()">
          <div>
            <ion-note class="ion-float-left">{{ caseItem.label }}</ion-note>
            <ion-text class="ion-float-left">{{ caseItem.value }}</ion-text>
          </div>
        </ion-item>
      </ion-list>

一些 tutorials/apps 有不同的方法来制作它。通常是在组件中订阅服务,然后将结果赋值给组件变量,这样:

cases = [];
  constructor(
              public caseService: CasesService) {
  }

  ngOnInit(): void {
    this.caseService.getStructure().subscribe(cases => this.cases = cases);
  }

你怎么看?一些道具,缺点?

推荐代表订阅和 return 局部变量的值的原因是,如果您将函数调用添加到 HTML 模板 angular 必须检查return 函数的值,通过这种方式多次调用函数本身。 由于 Angular 检查函数的 return 值,因此触发了整个变更检测生命周期。如果不在模板中使用函数调用而仅使用变量 Angular 不必调用任何函数,则仅触发 属性 检查。这样可以使应用程序更快,内存效率更高。