0

我正在使用 select normal 创建一个解决方案,并且一个 select 应该只包含它不包含在另一个中的选项。

我已经看到了 react-select 的示例,但它们对我不起作用,您知道我如何使用普通选择器来做到这一点吗?

我有这个:

Constructor: 

    const options = [
        { nombre: "Service 1", value: 1 },
        { nombre: "Service 2", value: 2 },
        { nombre: "Service 3", value: 3 }
    ];


    var arreglo = [];
    Object.keys(options).forEach(function (key) {
        arreglo.push(options[key]);
    });

    constructor(props) {
        super(props);
        this.state = {
            value1: false,
            value2: false
            //input.target.value :
        };
    }

两个选择器的 onchanges 函数:

onChange = option => {
    if (this.state.value2.value === option.value) {
        this.setState({
            value1: option,
            value2: false
        });

    } else {
        this.setState({ value1: option });
    }
};

onChange2 = option => {
    this.setState({ value2: option });
};


select1:

      <select placeholder="select" onChange={this.onChange} value={this.state.value1}>
                                        {arreglo.map(p =>
                                            <option key={p.value} value={p.value}>{p.nombre}</option>
                                        )}
                                    </select>

select2:

        <select placeholder="select" defaultValue={this.state.selectValue} onChange={this.onChange2} options= 
     {options.filter(option => option.value !== this.state.value1.value)} value={this.state.value2}>
                                        {arreglo.map(p =>
                                            <option key={p.value} value={p.value}>{p.nombre}</option>
                                        )}
                                        </select>

任何想法?我试试这个!!请帮我!

谢谢

4

0 回答 0