我如何将任何类型的CSS应用于redux-form Field组件?className和class属性会被忽略:
<div>
<label>Name</label>
<div>
<Field
className="form-input"
name="formContactName"
component="input"
type="text"
placeholder="Person to contact"
/>
</div>
</div>
我能够通过创建自定义组件来应用样式:
<div>
<label>Name</label>
<div>
<Field
name="formContactName"
component={ customInput }
/>
</div>
</div>
但这是一个很大的麻烦,并且在第一次使用redux-form时基本上抵消了它的好处。我有什么遗漏吗?请注意,我直接在自定义组件中添加了className赋值 - 我意识到我可以将它们作为props发送到Field中。
我尝试全局设置input
样式,但它们也被忽略了。Redux-form网站文档告诉你如何使用该工具,但我没有看到任何关于CSS的提及...
谢谢,
JB
编辑:这不是重复的问题 - 指向的答案使用了自定义输入组件。如上所述,我可以通过从在线文档中获取代码来使其工作,但这样一来,一开始就没有必要使用redux-form。
@Jay:我能够通过从在线文档中获取代码来使用自定义组件使其工作:
class MyCustomInput extends Component {
render() {
const { input: { value, onChange } } = this.props
return (
<div>
<label htmlFor="formContactName" className="col-sm-2 control-label">Name:</label>
<div className="col-sm-10">
<input
id="formContactName"
placeholder="Person to contact"
className="form-control"
type="text"
/>
</div>
</div>
)
}
}
然后,在redux-form的 Form
代码中:
<div>
<label>Name</label>
<div>
<Field
name="formContactName"
component={ MyCustomInput }
/>
</div>
</div>
使用 className
进行引导设置的方法很好。