【问题标题】:Angular reactive form value not updating on form array push角度反应形式值未在表单数组推送上更新
【发布时间】:2019-03-06 21:14:14
【问题描述】:

我尝试使用 formarray 嵌套表单控件,如果我更改现有显示值,它会更新表单值。但是我尝试在formarray中添加一个表单组,内容出现在UI中,而不是表单值(JSON)。我已经在 stackblitz 中发布了代码。提前致谢。

https://stackblitz.com/edit/angular-nested-forms-reactive-vvczmt

【问题讨论】:

    标签: angular angular-reactive-forms


    【解决方案1】:

    在您的 html 中,如果您使用 <pre> {{ form.getRawValue() | json }} </pre> 而不是 <pre> {{ form.value | json }} </pre>,您将看到完整的对象。

    【讨论】:

    • 谢谢。如果可能的话,您能否告诉我为什么它适用于编辑而不适用于新值。
    • 我个人不知道为什么,至少在你的情况下不是。我认为.value 是设置为可见的数据(有像.disable() 这样的标志,即使你可以在表单中看到它也会隐藏价值,emitEvent: false 会延长值已更新)但.getRawValue() 将显示所有值的最新数据,无论设置什么标志。
    • Angular 文档提到value 属性是获取组值的方法,因为它排除了FormGroup 中的禁用控件。 getRawValue() 检索所有值,无论其禁用状态如何。参考:angular.io/api/forms/FormGroup#getrawvalue
    • @balaG - 在新模式下,可能没有任何控件被禁用,因此它适用于新模式。
    猜你喜欢
    • 2021-02-08
    • 2022-01-03
    • 2018-11-17
    • 2020-03-11
    • 1970-01-01
    • 2023-02-16
    • 2022-01-09
    • 2018-07-31
    • 2020-09-02
    相关资源
    最近更新 更多