antd的form的shouldUpdate执行了validator没有执行

发布于 2022-09-13 00:39:25 字数 2050 浏览 27 评论 0

a和b的校验都相互依赖,这里用shouldUpdate去做,结果shouldUpdate执行了,对应的validator没有执行。这种应该怎么处理?

  <Form.Item
        noStyle
        shouldUpdate={(pre: any, current: any) => {
          const result = JSON.stringify(pre.a) !== JSON.stringify(current.a)
            || JSON.stringify(pre.b) !== JSON.stringify(current.b);
          console.log('shouldUpdate', result);
          return result;
        }}
      >
        {
          () => (
            <Form.Item name="a" label="a方式" required  rules={[
                        ({ getFieldValue }) => ({
                          validator(_, value) {
                          // 依赖b
                           console.log('validate);
                          },
                        })]}>
             <Radio.Group disabled={disabled}>
                    <Radio value={'ddd'}>ddd</Radio>
                    <Radio value={'xxx'}>xxx</Radio>
                  </Radio.Group>
            </Form.Item>
          )
        }
      </Form.Item>
        <Form.Item
        noStyle
        shouldUpdate={(pre: any, current: any) => {
          const result = JSON.stringify(pre.a) !== JSON.stringify(current.a)
            || JSON.stringify(pre.b) !== JSON.stringify(current.b);
          console.log('shouldUpdate', result);
          return result;
        }}
      >
        {
          () => (
            <Form.Item name="b" label="b方式" required  rules={[
                        ({ getFieldValue }) => ({
                          validator(_, value) {
                          // 依赖a
                           console.log('validate);
                          },
                        })]}>
             <Radio.Group disabled={disabled}>
                    <Radio value={'ddd'}>ddd</Radio>
                    <Radio value={'xxx'}>xxx</Radio>
                  </Radio.Group>
            </Form.Item>
          )
        }
      </Form.Item>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文