繁体   English   中英

为什么 react-select 不适用于 state 中的选项?

[英]Why react-select doesn't work with options from state?

这段代码可以正常工作,因为选项在外面:

import React from 'react';
import Select from 'react-select';

const options = [
  { value: 'chocolate', label: 'Chocolate' },
  { value: 'strawberry', label: 'Strawberry' },
  { value: 'vanilla', label: 'Vanilla' },
];

class App extends React.Component {
  state = {
    selectedOption: null,
  };
  handleChange = selectedOption => {
    this.setState(
      { selectedOption },
      () => console.log(`Option selected:`, this.state.selectedOption)
    );
  };
  render() {
    return (
      <Select
        value={this.state.selectedOption}
        onChange={this.handleChange}
        options={options}
      />
    );
  }
}

但是这段代码不起作用,因为选项在 state

import React from 'react';
import Select from 'react-select';

class App extends React.Component {
  state = {
     options: [
       { value: 'chocolate', label: 'Chocolate' },
       { value: 'strawberry', label: 'Strawberry' },
       { value: 'vanilla', label: 'Vanilla' },
    ],
    selectedOption: null,
  };
  handleChange = selectedOption => {
    this.setState(
      { selectedOption },
      () => console.log(`Option selected:`, this.state.selectedOption)
    );
  };
  render() {    
    return (
      <Select
        value={this.state.selectedOption}
        onChange={this.handleChange}
        options={this.state.options}
      />
    );
  }
}

如果我使用 state 中的选项,handleChange 中的控制台日志不会返回 selectedOption。 请告诉我,为什么? 我想将此插件与 state 中的选项一起使用...

options = [替换为options: [

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM