React-Select 1.0.0-rc.5 - 在选择选项

时间:2017-07-17 21:53:07

标签: react-select

我使用最新版本(1.0.0-rc.5)从react-select library实现了Select组件。

我可以单击Select元素打开列表。我选择一个值,它关闭列表并显示我选择的值。但是,当我再次单击该元素以显示选项列表时,没有任何反应。它只会在我点击之后打开列表(可能在模糊事件之后)。

我尝试使用autoBlur = {true}道具解决了这个问题,但是我无法在IE 11中找到页面上的下一个元素。

我注意到在演示页面上没有发生这种情况,该页面仍然使用0.9.1版本。

任何人都知道为什么会这样吗?

修改

这是我班级的样本

export class TestSelect extends React.Component {
    constructor(props) {
        super(props);
    }

    updateValue = (selectedItem) => {
        this.setState({ selectValue: selectedItem });

        if (this.props.onChange) {
            this.props.onChange(selectedItem);
        }
    }

    render() {
        return (
            <div id={this.props.id} className="form-styling">
                <Label text="React Select" />

                <br/><br />

                <Select
                    options={this.props.options}
                    className="select-class"
                    clearable={false}
                    onChange={this.updateValue}
                />
            </div>
        );
    }
}

这是实现类

的页面
const TestPage = () =>{

    return(
        <TestSelect
            id="select-id"
            options={testSelectOptions}
    />);

}

export const testSelectOptions = [
    { value: '1', label: 'Option 1' },
    { value: '2', label: 'Option 2' },
    { value: '3', label: 'Option 3' }
];

export default TestPage;

1 个答案:

答案 0 :(得分:0)

我明白了。选择选项时,我的输入的最小宽度设置为95%。

当尝试在下拉列表中单击时,这会导致event.target.tagName为INPUT,这会导致代码在触发任何焦点事件之前返回。