Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在react bootstrap select FromControl中获取所选选项的值_Javascript_Reactjs_React Bootstrap - Fatal编程技术网

Javascript 如何在react bootstrap select FromControl中获取所选选项的值

Javascript 如何在react bootstrap select FromControl中获取所选选项的值,javascript,reactjs,react-bootstrap,Javascript,Reactjs,React Bootstrap,我试图根据组件状态中存储的值,将用户从下拉列表中选择的内容写入firebase数据库,但我不知道如何获取所选选项的值并将其更新为storeType状态 这是我的下拉菜单: <FormGroup> <FormControl componentClass="select" placeholder="Store type"

我试图根据组件状态中存储的值,将用户从下拉列表中选择的内容写入firebase数据库,但我不知道如何获取所选选项的值并将其更新为
storeType
状态

这是我的下拉菜单:

<FormGroup>
                        <FormControl
                            componentClass="select"
                            placeholder="Store type"
                            onChange={this.handleCatChange}
                        >
                            <option value="placeholder">Choose eatery type...</option>
                            <option value="cafe">Cafe</option>
                            <option value="bakery">Bakery</option>
                            <option value="pizza">Pizza store</option>
                            <option value="sushi">Sushi store</option>
                            <option value="buffet">Buffet</option>
                            <option value="donut">Donut store</option>
                            <option value="other">Other</option>
                        </FormControl>
</FormGroup>
你需要像这样绑定你的函数


您的状态有效,但在执行
控制台.log时无效。这是因为
setState
是异步的,不会立即改变状态值

根据,

setState()不会立即改变this.state,但会创建 等待状态转换。调用此命令后访问this.state 方法可能返回现有值。没有 保证对setState的调用和可能发生的调用的同步操作 为提高性能而进行批处理

如果需要确保在进行setState调用后事件的顺序,可以传递回调函数

这是手电筒
非常感谢,我现在明白了
handleCatChange(e) {
    this.setState({
        storeType: e.target.value
    })
    console.log(this.state.storeType)
}
 onChange={this.handleCatChange.bind(this)}



    constructor () {
        super();
        this.state = { 
          storeType: '' 
        };
      }


    handleCatChange(e) {
    const type = e.target.value;
        this.setState({
            storeType:type 
        });

    }
handleCatChange(e) {
    this.setState({
        storeType: e.target.value
    }, () => console.log(this.state.storeType))
}