TextField将不会显示标签。但是,状态和值已正确更新。我已经放过{option.label}
,但不会显示。有人可以帮忙吗?
这是我的文本字段。
<TextField
id="standard-select-currency"
select
fullWidth
label="Filter By"
defaultValue= "lala"
InputLabelProps={{
shrink: true,
style: { color: '#fff' }
}}
margin="normal"
value={props.filter}
onChange={props.handleChange('filter')}
>
{currencies.map(option => (
<MenuItem key={option.value} value={option.value}>
{option.label}
</MenuItem>
))}
</TextField>
这是我的货币
const currencies = [
{
value: 'USD',
label: 'usd',
},
{
value: 'EUR',
label: 'eur',
},
{
value: 'BTC',
label: 'btc',
},
{
value: 'JPY',
label: 'jpy',
},
];
这是 codesandbox是为此案例创建的。
答案 0 :(得分:2)
您在value={props.filter}
上指定了TextField
,但没有为filter
指定MyMapComponent
道具。
如果您更改:
render() {
//console.log("render::::::::::::::::::::");
return (
<MyMapComponent
handleChange={this.handleChange}
/>
);
}
添加filter={this.state.filter}
如下:
render() {
//console.log("render::::::::::::::::::::");
return (
<MyMapComponent
filter={this.state.filter}
handleChange={this.handleChange}
/>
);
}
然后它起作用。