1
複数のgetを行うのではなく、フォームコントロールの配列を購読する方法はありますか。私のシナリオでは、オブジェクトに画像が表示されています。 私はtextfielda、textfieldbとnumbera valuechangesのみを購読したいと思います。フォーム全体のvaluechangesを購読しようとしましたが(これはうまく動作します)、高価な操作です。このフィールドは動的ですので、ngmodelを使用することはできませんどんな助けもありがとうございます。フォームコントロールの配列をサブスクライブする - 角度2/4
Observable.merge'。ここでは、FormArrayの特定の要素にvalueChangesを渡すことについて数日前に説明した例を示します。必要なものを変更して入手することができます:https://stackblitz.com/edit/formarraything –
箱からの角度。あなたのアプローチを深く説明できますか – dockerrrr
はい。目標は、FormArrayの特定の/単一の要素に対してvalueChangesを取得することです。 FormArray ValueChangesを購読すると、Array全体がログに記録されます。それはFormArrayなので、FormControlを動的に追加したり削除したりすることができます。そのため、各コントロールをforEachで取得し、次に、control.valueChangesをobservableArrayにプッシュする必要があります。最後に、FormArrayからの変更も取得するために、 'formArray.valueChanges'をobservableArrayにプッシュします。次に、Observable.mergeを使用してこれらのvalueChangesをマージし、変更時に値を取得するために 'distinctUntilChanged'を使用します。 –