Reactjs 物料界面选择字段多选
我多次尝试文档中给出的示例。但对我来说效果不好。 有人能帮我吗。。。。 这是密码Reactjs 物料界面选择字段多选,reactjs,material-ui,Reactjs,Material Ui,我多次尝试文档中给出的示例。但对我来说效果不好。 有人能帮我吗。。。。 这是密码 import React, {Component} from 'react'; import SelectField from 'material-ui/SelectField'; import MenuItem from 'material-ui/MenuItem'; const names = [ 'Oliver Hansen', 'Van Henry', 'April Tucker', 'R
import React, {Component} from 'react';
import SelectField from 'material-ui/SelectField';
import MenuItem from 'material-ui/MenuItem';
const names = [
'Oliver Hansen',
'Van Henry',
'April Tucker',
'Ralph Hubbard',
'Omar Alexander',
'Carlos Abbott',
'Miriam Wagner',
'Bradley Wilkerson',
'Virginia Andrews',
'Kelly Snyder',
];
/**
* `SelectField` can handle multiple selections. It is enabled with the `multiple` property.
*/
export default class SelectFieldExampleMultiSelect extends Component {
state = {
values: [],
};
handleChange = (event, index, values) => this.setState({values});
menuItems(values) {
return names.map((name) => (
<MenuItem
key={name}
insetChildren={true}
checked={values && values.indexOf(name) > -1}
value={name}
primaryText={name}
/>
));
}
render() {
const {values} = this.state;
return (
<SelectField
multiple={true}
hintText="Select a name"
value={values}
onChange={this.handleChange}
>
{this.menuItems(values)}
</SelectField>
);
}
}
select属性起作用,但它不选择多个选项。当我检查states.value时,它只包含一个值而不是一个值数组这个例子对我也不适用。要添加多选功能,必须手动将新值添加到状态,因此示例中的handleChange函数如下所示:
handleChange(event, index, values) {
this.setState({
values: [...this.state.values , values]
});
}
编辑:我将material ui的版本更新为最新的稳定版本,他们的示例非常有效你可以使用另一个数组并在其中推送你的值。是的,但如果它支持多选,它应该提供一个数组,不是吗…所以我选择了另一个插件,它对我有效,,,谢谢你的想法。[ [1]:是的,你可以使用react multiselect。这是一个更好的选择。它对我来说很好,,,,,,thanx mate…我建议其他人使用multi-select…谢谢兄弟,yha我们可以这样做…但我一直在寻找为什么multiselect在功能上不起作用…thanx无论如何,所以我实际上找到了它不起作用的原因@SalindaKrish。你必须更新你的版本将material UI的版本升级到最新的稳定版本。我升级了,安装了npm,然后它像一个charmHmmm一样工作,这可能是一个原因,thanx@Sua Morales