Я пытался получить данные из базы данных Firebase Realtime и отобразить их в таблице response- bootstrap -table2, но у меня возникли некоторые проблемы, когда дело доходит до фактического отображения данных. Когда я запускаю код, в таблице не печатается никакое значение, однако в консоли нет ошибки. Если я устанавливаю количество отображаемых значений в таблице равным 25, возникает ошибка: Uncaught TypeError: Невозможно прочитать метку времени свойства undefined. Однако, если я использую метку времени console.log, я сначала получаю пустой массив, а затем массив со значениями с меткой времени (см. Снимок экрана ниже).
Вот мой код:
const App = () => {
const timestamp = [];
const getTimestamp = () => {
const database = db.ref().child("timestamped_measures");
database.on("value", (ts_measures) => {
ts_measures.forEach((ts_measure) => {
const array = {
time: ts_measure.val().timestamp,
};
timestamp.push(array);
});
});
};
const columns = [{ dataField: "time", text: "Timestamp" }];
useEffect(() => {
getTimestamp();
}, []);
console.log(timestamp);
return (
<div className="App">
<BootstrapTable
keyField="timestamp"
data={timestamp}
columns={columns}
pagination={paginationFactory()}
/>
</div>
);
};
export default App;
Так выглядит моя база данных Firebase
Так выглядят моя страница и консоль
Если для разбивки на страницы установлено 10 до 25, вот так выглядит ошибка
Кто-нибудь знает, почему моя версия не работает? Любая помощь будет оценена!