здесь я пытаюсь загрузить опции в выпадающем списке, только когда введено минимум 5 символов. Это потому, что мой список опций огромен, и это снижает производительность моих приложений.
Я попробовал приведенный ниже код, пожалуйста, предложите, как я могу настроить его, чтобы он работал.
this.state= {
options_show: false, // It's false in state
};
inputEntered(e) {
let value = e.target.value;
if (value.length > 5){
this.setState({options_show: true})
}
}
handleChangeName = (e, i) => {
let { nameID, nameIDArray } = this.state;
let filteredID = namesData.filter(name => name.name == e.value)
.map((name) => {
return name.id
})
nameIDArray[i] = filteredID[0];
this.setState({ nameIDArray });
};
<Select placeholder="Enter Profile Name"
name="SID0"
onChange={(e) => this.handleChangeName(e, 0)}
options={this.state.options_show ? options: []}
onInputChange={this.inputEntered}
// openMenuOnFocus={false}
// openMenuOnClick={false}
/>
Это не ограничивает ввод здесь, при вводе каждого символа начинается загрузка всего список.