我正在使用Firebase JS SDK。每当我为一个节点(带有事务)设置一个值时,就会触发该节点上的“value”事件(甚至在调用事务回调之前。
我觉得这个功能真的很烦人(尽管在其他一些情况下这样很方便)。我可以关闭此本地同步功能吗?
答案 0 :(得分:1)
您可以通过transaction
传递false
参数来阻止乐观触发applyLocally
的本地事件。见https://www.firebase.com/docs/web/api/firebase/transaction.html
transaction(updateFunction, [onComplete], [applyLocally])
applyLocally 布尔 *可选
默认情况下,每次运行事务更新功能时都会引发事件。因此,如果它多次运行,您可能会看到中间状态。您可以将此值设置为false以禁止这些中间状态,而是等到事务完成后再引发事件。