当前位置: 首页 > 知识库问答 >
问题:

使用setFieldValue Ant设计设置字段值

越朗
2023-03-14

我正在使用react并使用Ant DesignV4.1.0。
我有一个表单,在提交(onFinish)时,我将id发送给reducer以获得字段的所有值。我这样做是因为我的要求(我必须选择表单本身的id并多次获取所有数据,还必须用特定的id从多个地方打开相同的表单)。也许有更好的方法来达到我的要求,但目前我正在这样做。

我正在获得所需的数据道具(我验证了),但我不能用新道具更新字段。

我已经设置好了

class CustomForm extends React.Component {
  formRef = React.createRef();
  constructor()
    render(){
      return(
        <Form 
          ref={this.formRef} 
          onFinish={this.onFinish} 
          name="customForm"
          initialValues=
           {{
             //(trying) email: this.props.customerData.map((d) => d.email)
           }}
        >
          <Form.Item label="Email" name="email">
            <Input />
          </Form.Item>
        </Form>
      )} 
}

我读过ant的设计文档,提到initialvalues对状态变化不起作用,我们应该使用SetFieldsValue。

尝试时,我根据示例为基于类的表单添加了“FormRef”,但无法使用SetFieldValue。
我尝试使用

componentDidUpdate(){
    alert(JSON.stringify(this.props.customerData.map((d) => d.email)));
    this.formRef.current.setFieldsValue({
      mobileNumber: this.props.customerData
        .map((d) => d.mobile_number),
      email: this.props.customerData.map((d) => d.email),
    });
   }

获取错误无法读取属性“set fieldsvalue”为null

如何设置值,实际使用SetFieldValues?
以及为什么this.formRef为空?

共有1个答案

谷梁博易
2023-03-14

所以在onFinish上,我设置loading=true,返回的结果是

(this.state.loading? :

)

我得到这个的原因是.formref=null。

现在解决了问题。

谢谢

 类似资料:
  • 问题内容: 我正在与一个非开源项目合作,我需要修改一个或多个其类。 在一个类中是以下集合: 我需要做的就是在这里使用反射和并发hashmap。我试过下面的代码,但是不起作用。 问题答案: 希望这是您要尝试做的事情: 它打印:

  • 使用指南 - 统计设置 - 统计规则设置 为您详细介绍百度统计所支持的各种设置功能及使用方法,比如设置排除规则、设置跨域、添加指定广告追踪、设置转化目标等。 统计规则设置 什么是统计规则 如何设置跨域监控 跨域跟踪的用途举例 多域名网站的跨域跟踪 排除特定域名来源的访问流量 排除特定域名的访问流量 排除特定IP的访问流量 子目录介绍及设置方法 统一页面地址功能介绍

  • 使用指南 - 统计设置 - 其它设置 为您详细介绍百度统计所支持的各种设置功能及使用方法,比如设置排除规则、设置跨域、添加指定广告追踪、设置转化目标等。 其它设置 如何关闭数据采集 数据导出服务及其开通方法 统计图标如何设置 什么是统计图标

  • 使用指南 - 统计设置 - 转化设置 为您详细介绍百度统计所支持的各种设置功能及使用方法,比如设置排除规则、设置跨域、添加指定广告追踪、设置转化目标等。 转化设置 什么是转化及统计支持的转化类型 什么是页面转化 什么是转化路径 转化路径如何设置 什么是事件转化 如何查看事件ID 如何设置事件转化 Trackevent方式设置事件转化 如何查看转化数据 页数转化 时长转化 什么是转化收益 什么是长效

  • 这是我得到的错误(在setMOTD的最后第二行):

  • 问题内容: 有什么方法可以使用反射设置界面字段?当我尝试设置它时,它惊慌地说该值不可寻址。 问题答案: 接口没有字段,它们仅定义包含的值的方法集。在界面上进行反射时,可以使用提取值。 您也不能取消导出字段。您需要大写您的类型的字段名称。遍历字段时,用于测试它们是否可设置。如果该值不可寻址或该值仍在接口中,则也会返回false。 您的代码的有效示例:http : //play.golang.org/