首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在提交时从表单中的WeekPicker中获取自定义周值

如何在提交时从表单中的WeekPicker中获取自定义周值
EN

Stack Overflow用户
提问于 2019-12-07 09:40:53
回答 1查看 322关注 0票数 0

我是ant-design-pro新手,我正在编写一个示例项目,以帮助我的队友提高效率。

现在我遇到了一个问题,我无法从WeekPicker获得Form中的自定义格式周值,Query String Parameters中的周值是week: "2019-12-11T08:45:42.884Z",它应该是YYYYw格式,比如week: 201950

下面是我如何定义表单的方法:

代码语言:javascript
复制
   ...
   <Form onSubmit={this.handleSearch} layout="inline">
        ...
            <FormItem label="">
              {getFieldDecorator('week')(<WeekPicker placeholder="周" format={'YYYYw'} />)}
            </FormItem>
        ...
   </Form>
   ...

下面是函数代码:

代码语言:javascript
复制
  handleSearch = (e: React.FormEvent) => {
    e.preventDefault();

    const { dispatch, form } = this.props;

    form.validateFields((err, fieldsValue) => {
      if (err) return;
      const values = {
        ...fieldsValue,
      }
      ...
      dispatch({
        type: 'listAndtableList/fetch',
        payload: values,
      });
    });
  } 

表单自动获取每个字段值,它没有注意到我在WeekPicker中定义了一种格式,任何人都可以帮助吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-09 10:03:28

我问了一位蚂蚁金融的工程师,是哪家公司开发了ant-design-pro,然后得到了答案。

WeekPicker总是输入或输出moment对象,因为可能存在时区问题,所以我们需要自己处理,尽管我们已经在其中设置了格式。

以下是解决办法:

代码语言:javascript
复制
form.validateFields((err, fieldsValue) => {
      if (err) return;

      const weekMoment = fieldsValue['week'];
      const week = weekMoment.format('YYYYw');
      ...
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59224702

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档