Если у вас есть массив состояний, и вы продолжаете добавлять данные динамически, он будет отображаться автоматически. Проверьте мое демо ниже. Я сделал setInterval
из 1 секунды, чтобы вы представляли данные, поступающие каждую секунду. Мой массив состояний names
обновится автоматически. Таким образом, нет необходимости иметь какую-то кнопку MORE OPTIONS или прокрутку в вашем Select, потому что информация будет добавлена автоматически.
import React, { Component } from 'react';
import './style.css';
import { render } from 'react-dom';
class App extends Component {
constructor() {
super();
this.state = {
names: ["Person 1", "Person 2", "Person 3", "Person 4"],
nb: 4
};
}
render() {
setTimeout(() => {
const tmp = [...this.state.names];
const num = this.state.nb;
num++;
tmp.push("Person " + num)
this.setState({ names: tmp, nb: num });
}, 1000);
return (
<div>
<select>
{this.state.names.map((value) =>
<option value={value}>{value}</option>
)}
</select>
</div>
);
}
}
render(<App />, document.getElementById('root'));
Демо