Ant.design 未检测到 Form.Item React 中的自定义输入组件

Eva*_*oda 4 forms typescript reactjs react-redux antd

所以,主要的问题是,antd表单没有检测到我基于antd标准输入的自定义输入:有一段表单代码(AddProduct):

                   <Form.Item
                        className="m-t-10"
                        name="price"
                        rules={[
                            {
                                required: true,
                                message: `${t('FORM.ERR.SHOP.PRICE')}`,
                            },
                        ]}
                    >
                        <CurrencyInput size="small" placeholder={t('FORM.SHOP.PRICE_VAT')} name="price" />
                    </Form.Item>
Run Code Online (Sandbox Code Playgroud)

有我的自定义输入(CurrencyInput):

return (
    <Input size={props.size} placeholder={props.placeholder} name={props.name} type="number" prefix={settings[6].value} />
)
Run Code Online (Sandbox Code Playgroud)

问题是,当我尝试提交表单时,它没有检测到货币输入,并抛出该字段为必填字段的错误。任何想法都可以实现自定义输入,基本上,它比自定义输入更多 HOC

Oro*_*Oro 9

您需要将所有道具传递给自定义组件,因为Form.Item传递到那里onChangevalue道具

function CustomInput({size, placehodler, name, ...restProps}) {
  return (
    <Input size={size} placeholder={placeholder} name={name} 
      type="number" prefix={settings[6].value} {...restProps} />
  )
}

Run Code Online (Sandbox Code Playgroud)