2

基本上,我最近在我的生产环境中遇到了 ant-design 表单问题,以前它按预期工作。NPM start验证仅在我在本地运行命令时才有效。如果我使用NPM Build: serve然后在我的本地也面临同样的问题。
执行验证任务时在控制台上显示此错误。

未捕获的类型错误:无法在 createBaseForm.js:369 处读取未定义的属性“推送”

在遇到此问题后,我尝试更新我的所有 NPM 包以及 mn NPM 和节点版本。

<FormItem>
   {getFieldDecorator('userName', {
      rules: [{ required: true, message: 'Please input username!' }],
      })(<Input addonBefore={<i className="iconfont icon-user" />} 
         size="large" placeholder="Username" /> 
   )}
</FormItem>

它没有向我显示规则中使用的错误消息。

4

1 回答 1

4

在我的情况下,错误是由 webpack 构建引起的,lodash.memoizelodash.paths不是在 webpack 构建中加载,因为我正在使用lodash-webpack-plugin它来减小包大小。

Lodash 功能默认移除:link

解决方案是选择加入所需的功能。

new LodashModuleReplacementPlugin({
    'memoizing': true,
    'paths': true
});

编辑: antd正在使用rc-formwhich 反过来用于lodash设置错误。

于 2019-01-24T11:03:55.673 回答