這個想法是水中的傳感器將資料發送到我的資料庫,我希望資料實時發送到前端,換句話說:資料庫更新然后前端更新。
我使用的工具:
- MongoDB
- 節點
- 套接字io
- ReactJS
它實際上作業正常,這是我處理實時資料流的主要代碼
const Zips = require("./dataSchema");
io.on("connection", (socket) => {
setInterval(()=>{
Zips.find().then((result) => {
socket.emit("output", result);
});
}, 5000)
});
#Zips 是模式使用 mongoose
我使用setinterval每 5 秒更新一次。
題 :
Socket-io 或 Mongodb 是否提供任何函式或方法,以便不需要 setInterval 或任何其他方式?
##edit 11/8 射線顯示檔案有效。
uj5u.com熱心網友回復:
解決方案 :
io.on("connection",(socket)=>{
const changeStream = Zips.watch()
changeStream.on('change',(next)=>{
if(next.operationType=="insert"){
Zips.find().then((result) => {
socket.emit("output", result);
});
}
})
})
using watch(),然后回呼函式提供了很多可以跟蹤的資料。
檔案:更改流
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/352505.html
