如何在 Select 元素(react-select)中显示选项后禁用可搜索功能?
How to disable searchable ability after displaying the options in Select element(react-select)?
我正在将选项异步传递给 select element.Anyway 我想有一个条件来检查有多少选项 passed.If 选项 <=10,那么搜索应该是已禁用,如果选项 >10,则应启用搜索。这是我的代码,
render() {
var getOptions = (input, callback) => {
axios.get(url).then(function (response) {
response.data.map(function(a){
a.value = a.id;
a.label = a.id;
});
callback(null,{options :response.data,complete : true});
})
}
return (
<div className="col-md-6">
<div>Select List:</div>
<Select.Async
loadOptions={getOptions}
onChange={this.onChange}
value={this.state.value}
/>
</div>
);
}
通过使用 "searchable" 属性,我们可以启用或禁用 [=20=] 组件。但我不知道如何根据某些条件做到这一点。任何人都可以在这里提出任何建议吗?
你最好尝试关注,
axios.get(url_large).then(function (response) {
response.data.map(function(a){
a.value = a.id;
a.label = a.title;
});
this.setState({ options : response.data }) ;
if(response.data.length <= 10) {
this.setState({ disable : false }) ;
}
else {
this.setState({ disable : true }) ;
}
callback(null,{options :response.data,complete : true});
}.bind(this));
}
这里 'disable' 是一个状态值,您必须先在构造函数中定义它,然后将其传递给您的 'Select' 属性 'searchable'.
我正在将选项异步传递给 select element.Anyway 我想有一个条件来检查有多少选项 passed.If 选项 <=10,那么搜索应该是已禁用,如果选项 >10,则应启用搜索。这是我的代码,
render() {
var getOptions = (input, callback) => {
axios.get(url).then(function (response) {
response.data.map(function(a){
a.value = a.id;
a.label = a.id;
});
callback(null,{options :response.data,complete : true});
})
}
return (
<div className="col-md-6">
<div>Select List:</div>
<Select.Async
loadOptions={getOptions}
onChange={this.onChange}
value={this.state.value}
/>
</div>
);
}
通过使用 "searchable" 属性,我们可以启用或禁用 [=20=] 组件。但我不知道如何根据某些条件做到这一点。任何人都可以在这里提出任何建议吗?
你最好尝试关注,
axios.get(url_large).then(function (response) {
response.data.map(function(a){
a.value = a.id;
a.label = a.title;
});
this.setState({ options : response.data }) ;
if(response.data.length <= 10) {
this.setState({ disable : false }) ;
}
else {
this.setState({ disable : true }) ;
}
callback(null,{options :response.data,complete : true});
}.bind(this));
}
这里 'disable' 是一个状态值,您必须先在构造函数中定义它,然后将其传递给您的 'Select' 属性 'searchable'.