内容简介:发现
antd-design Form,Select联合使用 placeholder 不起作用问题
起因
- 最近在用
antd写表单的时候遇到个问题:Form,Select组件一起使用时,设置Select组件的placeholder属性并没有起作用。如下图:
发现 Select 组件的 placeholder 属性并没有起作用。
排查
- 对照官方文档看了一下官方的代码
<Form.Item
label="Gender"
>
{getFieldDecorator('gender', {
rules: [{ required: true, message: 'Please select your gender!' }],
})(
<Select
placeholder="Select a option and change input text above"
onChange={this.handleSelectChange}
>
<Option value="male">male</Option>
<Option value="female">female</Option>
</Select>
)}
</Form.Item>
- 发现跟自己的代码唯一的区别就是我这里设置了这个表单项的
initialValue属性,官方文档是这样讲的:
- 对表单内的组件使用
onChange合成事件不介意使用setState以及value为组件绑定值,介意使用initialValue设置初始化值。所以我这里写的也是没问题的。 - 没办法了呀,遇到这种莫名其妙的问题只能去
antd-github-issues去找有没有人提出过相同的问题了,搜了一下发现还真有!!!
- 修改自己的代码之后
<Form.Item {...formItemLayout} label="证件类型">
{getFieldDecorator('certType', {
initialValue: publicAccount.certType ? publicAccount.certType : undefined,
rules: [{ required: true, message: '请选择证件类型' }],
})(
<Select style={{ width: 280 }} placeholder="请选择证件类型" onChange={this.handleCertTypeChange}>
<Option value="1">身份证</Option>
<Option value="2">营业执照</Option>
</Select>,
)}
</Form.Item>
总结
- 开源有风险,使用需谨慎。当然不是说antd不好(真香)。对于一些api来说还是希望稳定尽可能能够完整一点吧。当然这里自己踩过这个坑之后下次肯定就记得了,这里也记录一下,万一有人遇到相同的问题呢。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Python科学计算(第2版)
张若愚 / 清华大学出版社 / 2016-4-29 / 118
本书介绍如何用 Python 开发科学计算的应用程序,除了介绍数值计算之外,还着重介绍了如何制作交互式二维、三维图像,如何设计精巧的程序界面,如何与 C 语言编写的高速计算程序结合,如何编写声音、图像处理算法等内容。本书采用 IPython notebook 编写,所有的程序均能在本书提供的运行环境中正常运行,书中所印刷的图表以及程序输出为均为自动运行的结果,保证了书中所有程序的正确性以及可读性。......一起来看看 《Python科学计算(第2版)》 这本书的介绍吧!