[英]Database insert data, real-time render to frontend
這個想法是水中的傳感器將數據發送到我的數據庫,我希望數據實時發送到前端,換句話說:數據庫更新然后前端更新。
我使用的工具:
它實際上工作正常,這是我處理實時數據流的主要代碼
const Zips = require("./dataSchema");
io.on("connection", (socket) => {
setInterval(()=>{
Zips.find().then((result) => {
socket.emit("output", result);
});
}, 5000)
});
#Zips 是模式使用貓鼬
我使用 setinterval 每 5 秒更新一次。
題 :
Socket-io 或 Mongodb 是否提供任何函數或方法,以便不需要 setInterval 或任何其他方式?
##edit 11/8 射線顯示文檔有效。
解決方案 :
io.on("connection",(socket)=>{
const changeStream = Zips.watch()
changeStream.on('change',(next)=>{
if(next.operationType=="insert"){
Zips.find().then((result) => {
socket.emit("output", result);
});
}
})
})
使用watch()
,然后回調函數提供了很多可以跟蹤的數據。
文檔:更改流
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.