【问题标题】:Don't get the value after submitting form提交表单后不获取值
【发布时间】:2025-12-11 07:05:01
【问题描述】:

我的表单中有 2 个开关。每个开关都有自己的默认值(一个被选中,另一个不被选中)。当我尝试在不更改开关的情况下提交表单时出现问题,因为我在控制台中为每个开关都未定义。 如果用户不更改开关并单击提交按钮,如何获取值?

代码链接:https://codesandbox.io/s/basic-usage-ant-design-demo-o3kro?file=/index.js

【问题讨论】:

    标签: reactjs


    【解决方案1】:

    我不熟悉蚂蚁。但是使用纯 HTML inputs 你会有两个选择:

    1. 具有默认值内容并在未定义值时使用它。
    // Outside component
    const DEFAULTS = {
        test2: false,
        test: true,
    }
    
    //Inside component
    const onFinish = values => {
        const { test2 = DEFAULTS.test2, test = DEFAULTS.test } = values
        console.log("Success:", { test2, test });
    };
    
    // Don't forget to change de `defaultChecked` prop for these values as well.
    
    1. 使用controlled components 使用某些状态。

    我建议选项 2,因为这是受控组件的明确用例。

    【讨论】: