我有一个带布尔变量的角4分量。初始值取决于输入流。
Type Script要求我在下面的例子中声明变量。如果没有它,isloading将触发一个错误。
在这一点上,我不知道它的值,所以我只是声明它而不指定变量。

export class SomeComponent implements OnInit {
  @Input() someStream$;
  isLoading: boolean;

  ngOnInit() {
    someStream.subscribe((someData) => {
      // Code to determine the value for isLoading
      this.isLoading = true;
    });
  }
}

稍后当我知道这个值时,我会将它设置为true或false。但接着“表情变化”就开始了。
设置这些“默认”值的“正确方法”是什么?

最佳答案

我假设isloading是您的标志,用于知道请求是否已完成。
我在这个场景中所做的是将加载初始化为false:

export class SomeComponent implements OnInit {
  @Input() someStream$;
  // Initialized as false.
  isLoading: boolean = false;

  ...
}

如果isloading标志有更多的逻辑,我将改变您与组件交互的方式,并将@input()直接更改为somedata,并在其父级中处理异步逻辑。
希望有帮助。

10-06 06:07