![](/img/trans.png)
[英]react-big-calendar ERROR: Invalid prop `slotStart` of type `date` supplied to `Popup`, expected `number`
[英]Invalid prop `data` of type `number` supplied to `DataProvider`, expected `array`. React-bootstrap-table2, Firebase Realtime Database
我一直在嘗試從 Firebase 實時數據庫中檢索數據並將其顯示在 react-bootstrap-table2 中,但是在實際顯示數據時遇到了一些問題。 當我運行代碼時,我收到一個錯誤: Failed prop type: Invalid prop data
of type number
provided to DataProvider
, expected array
。
這是我的代碼:
const App = () => {
const [timestamp, setTimestamp] = useState([]);
const [loading, setLoading] = useState(false);
const getTimestamp = () => {
const database = db.ref("timestamped_measures");
database.on("value", (ts_measures) => {
ts_measures.forEach((ts_measure) => {
setTimestamp(ts_measure.val().timestamp);
});
});
};
const columns = [{ dataField: "timestamp", text: "Timestamp" }];
useEffect(() => {
getTimestamp();
}, []);
return (
<div className="App">
<BootstrapTable
keyField="timestamp"
data={timestamp}
columns={columns}
pagination={paginationFactory()}
/>
</div>
);
};
export default App;
任何幫助,將不勝感激!
您需要將 ts_measures 中的時間戳結果 map 放入一個數組中,並將其存儲在 state 中。 我假設,由於您的列包含一個數據字段“時間戳”,因此您的每個數據行都需要這個鍵來保存時間戳列的數據。
{timestamp: ts_measure.val().timestamp}
試一試
const getTimestamp = () => {
const database = db.ref("timestamped_measures");
database.on("value", (ts_measures) => {
setTimestamp(ts_measures.map((ts_measure) => {
return {timestamp: ts_measure.val().timestamp}
}));
});
};
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.