javascript - 如何以编程方式设置 React Dropdown 的值

标签 javascript reactjs

我有这个代码

<Dropdown
    id="city"
    placeholder="Select a city"
    options={this.state.cities}
    onChange={this.onChangeHandler}
    />;

这将显示一个下拉列表,其中显示占位符“选择城市”。

我想做的是,如果 this.state.cities 只有一个元素,则将其设置为预选。否则,继续显示占位符文本和下面的所有选项。

我正在使用的库是https://www.npmjs.com/package/react-dropdown

谢谢

最佳答案

根据documentationDropdown 组件采用 value 属性。

import Dropdown from 'react-dropdown'
import 'react-dropdown/style.css'

class App extends React.Component {
   constructor() {
     super();
      this.state={
        cities: ["New York", "San Francisco", "Seattle", "Washington DC"],
        selectedCity: ""
      }
   }

   handleSelectCity = (option)=> {
      const selectedCity = option.value
      this.setState({selectedCity});
   }

   render() {
      const {selectedCity, cities} = this.state;

      return (
        <Dropdown 
          options={cities} 
          onChange={this.handleSelectCity} 
          value={selectedCity} 
          placeholder="Select an option" 
        />
      )
   }
}

export default App;

关于javascript - 如何以编程方式设置 React Dropdown 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56165404/

相关文章:

javascript - React-beautiful-dnd 中的 Draggables 不会拖动,而只会创建一个占位符

javascript - 如何使用knockoutjs绑定(bind)嵌套输入

javascript - 输入 Javascript 源代码,然后页面立即无法正常工作

javascript - 限制特殊字符的正则表达式

javascript - React redux reducer 没有改变

css - 为什么 flex-direction 不能按照我设置的方式工作? react js

javascript - (帮助)React Native JSON 文件太大。 Bundler 堆内存不足

javascript - 意外的 token ,预期的......

javascript - 使用 Bacon.js 在容器中列出

java - 在新窗口中自动提交表单