我希望能够多次选择一种我称为“跳过”的语言,而不会从下拉菜单中消失。目前,我选择的任何语言都会从下拉列表中消失。这可能吗?这是我的代码:
const languages = [
{ key: 'skip', text: 'Skip', value: 'Skip' },
{ key: 'english', text: 'English', value: 'English' },
{ key: 'french', text: 'French', value: 'French' },
]
handleAudioInputChange = (e, { name, value }) => this.setState( { [name]: value })
<Form.Select fluid search label='Audio Channels' name='audiochannelsValue' value={audiochannelsValue} options={languages} placeholder='Choose Audio Channels' onChange={this.handleAudioInputChange} multiple = "true"/>
我尝试了多种操作,例如hideSelectedOptions = {false},但这似乎不起作用。有什么想法吗?
答案 0 :(得分:1)
如果只希望基于用户输入的字符串,则可以执行以下操作:
handleAudioInputChange = (e, { value }) => {
this.setState(prevState => {
const newVal = `${prevState.audiochannelsValue.length ? '/' : ''}${value}`;
return {
textValue: prevState.textValue.concat(newVal),
audiochannelsValue: value
};
});
}
这将基于先前的状态构建一个字符串,并用/
分隔每个值。尚未测试,但它应该生成(按顺序):
English
English/Skip
English/Skip/French
English/Skip/French/Skip