相关疑难解决方法(0)

如何识别FormArray中的哪个项目发出了valueChanges事件?

Angular,有一个方法来识别FormGroup/ FormControl在一个动态FormArray发射的valueChanges事件?

FormArray是动态的。它开始是空的和用户可以添加FormGroupFormArray通过点击一个按钮。

当valueChanges时,我需要重新验证控件。由于我不知道哪个控件发出了该事件,因此我将遍历整个控件FormArray并验证所有FormGroupFormControl即使仅更改了一个控件),这是每次数组中的任何内容发生更改时。我如何避免这样做?

        this.myFormArray
        .valueChanges
        .subscribe(data => this.onValueChanged(data));

    onValueChanged(data?: any): void {

    // the data I receive is an entire form array.
    // how can I tell which particular item emitted the event, 
    // so I don’t need to loop through entire array and run validation for all items.

    for (let control in this.myFormArray.controls) {
        // run …
Run Code Online (Sandbox Code Playgroud)

rxjs angular angular-reactive-forms

5
推荐指数
3
解决办法
2430
查看次数

标签 统计

angular ×1

angular-reactive-forms ×1

rxjs ×1