多次反应选择下拉选项

时间:2019-01-23 21:04:06

标签: reactjs

我希望能够多次选择一种我称为“跳过”的语言,而不会从下拉菜单中消失。目前,我选择的任何语言都会从下拉列表中消失。这可能吗?这是我的代码:

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},但这似乎不起作用。有什么想法吗?

1 个答案:

答案 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