【发布时间】:2020-04-01 22:59:33
【问题描述】:
我有一个带有选择的应用程序。如果我保存了多次选择值,我想连接选择中的所有值。
例如,如果我选择水果,然后再选择一个,那么我希望拥有所有值,而不是像现在这样每次都覆盖以前的值。
const OPTIONS = ["Apples", "Nails", "Bananas", "Helicopters"];
class SelectWithHiddenSelectedOptions extends React.Component {
state = {
selectedItems: []
};
handleChange = selectedItems => {
this.setState({ selectedItems });
};
save = () => {
console.log(this.state.selectedItems); // here i want to concatenate all values
};
render() {
const { selectedItems } = this.state;
const filteredOptions = OPTIONS.filter(o => !selectedItems.includes(o));
return (
<div>
<Select
placeholder="Inserted are removed"
value={selectedItems}
onChange={this.handleChange}
style={{ width: "100%" }}
>
{filteredOptions.map(item => (
<Select.Option key={item} value={item}>
{item}
</Select.Option>
))}
</Select>
<button onClick={this.save}>click</button>
<h1>{this.selectedItems}</h1>
</div>
);
}
}
如何做到这一点? 链接到我的应用程序:https://codesandbox.io/s/hide-already-selected-ant-design-demo-46ojt
【问题讨论】:
-
你的意思是多选像这里codesandbox.io/s/3k3vjplo5 ??
-
@Maniraj Murugan,不,我想通过单选来做到这一点。有可能吗?
-
@ManirajMurugan,我想要这样的东西codesandbox.io/s/serene-hamilton-go4m3
标签: javascript reactjs antd