Angular 订阅在值更改之前不起作用(需要先初始化)

Angular Subscribe Doesn't work Until Value Changes ( Need first initialize )

  this.skusChangeSubscription = this.productForm.get('skus').valueChanges
    .pipe(debounceTime(600)).subscribe(skusValue => {
      console.log('SKUS: ', skusValue);
    ...
    ...
  });

我需要代码直接 运行 此订阅方法一次,直到值发生变化。它在值更改时起作用,但在值更改之前订阅时不起作用。订阅后我需要 运行 一次。

试试这个:

this.skusChangeSubscription = this.productForm.get('skus')
    .pipe(take(1)).subscribe(skusValue => {
      console.log('SKUS: ', skusValue);
    ...
    ...
  });

尝试使用 startWith 运算符。在从源可观察对象发出之前,它首先发出指定为参数的项目。

this.skusChangeSubscription = this.productForm.get('skus').valueChanges
  .pipe(
    startWith(this.productForm.get('skus').value),
    debounceTime(600)
  )
  .subscribe(skusValue => {
    console.log('SKUS: ', skusValue);
  ...
  ...
  });