Арт*_*тов 4 database node.js firebase firebase-realtime-database
我在 Node js 上使用 firebase 实时数据库,就像 API 数据库一样。
once()和之间有什么不同on()?
我的代码once()运行速度非常慢。
需要它做什么off()?
例子
router.get('/:qrid', async(req, res)=>{
let id = req.params.qrid;
let ref = firebase.database().ref('/qr/'+id);
let snapshot = await ref.once('value');
res.json(Object.assign({}, snapshot.val()));
});
Run Code Online (Sandbox Code Playgroud)
这个工作非常慢(250ms-3000ms)。当我使用 on() 时,速度更快。
router.get('/:qrid',(req, res)=>{
let id = req.params.qrid;
let ref = firebase.database().ref('/qr/'+id);
ref.on('value',(snapshot) => res.json(Object.assign({}, snapshot.val())));
});
Run Code Online (Sandbox Code Playgroud)
来自文档:
一次:
once(eventType: EventType, successCallback?: function, failureCallbackOrContext?: function | Object | null, context?: Object | null): Promise<DataSnapshot>只侦听指定事件类型的一个事件,然后停止侦听。
这相当于调用
on(), 然后off()在回调函数内部调用。有关事件类型的详细信息,请参阅 on()。
在:
on(eventType: EventType, callback: function, cancelCallbackOrContext?: Object | null, context?: Object | null): function监听特定位置的数据变化。
这是从数据库读取数据的主要方式。您的回调将针对初始数据触发,并在数据发生变化时再次触发。用于
off( )停止接收更新。
off()用于分离先前附加的回调on()
您可以查看参考:
https://firebase.google.com/docs/reference/js/firebase.database.Reference.html
| 归档时间: |
|
| 查看次数: |
3652 次 |
| 最近记录: |