【发布时间】:2018-08-07 01:42:56
【问题描述】:
我有以下 JSX:
<FormControl>
<InputLabel>My label</InputLabel>
<Select>
...
</Select>
</FormControl>
我使用classes 属性来设置FormControl 和Select 的各个方面的样式。问题是Select 组件隐式地用Input 组件包装自己,因此实际上看起来像这样:
<FormControl>
<InputLabel>My label</InputLabel>
<Input>
<Select>
...
</Select>
</Input>
</FormControl>
这就是我遇到问题的地方:如何设置包装 Select 的 Input 样式?我查看了 Select 和 FormControl 的 CSS API,但它们都不允许您设置 Input 的样式。
我知道我可以将 className 添加到 FormControl,然后使用外部样式表设置它的样式,但我想在组件级别设置它的样式。
有什么想法吗?
编辑:
我的代码的 sn-p(带有虚拟内容),用于说明(已请求):
<FormControl
classes={myClasses.formControl}
>
<InputLabel
htmlFor='country'
classes={myClasses.inputLabel}
>
Select country
</InputLabel>
<Select
value={countryCode}
onChange={onInputChange}
inputProps={{
name: 'countryCode',
id: 'country',
}}
classes={myClasses.select}
>
<MenuItem value='US'>United States</MenuItem>
<MenuItem value='GB'>United Kingdom</MenuItem>
<MenuItem value='FR'>France</MenuItem>
</Select>
</FormControl>
【问题讨论】:
标签: reactjs material-ui