Firebase - 多位置更新方法已弃用,现在怎么办?

jac*_*tte 4 javascript firebase ecmascript-6 firebase-realtime-database

我有一些使用多位置更新方法的应用程序如下:

const updates = [];
updates['/location1'] = data;
updates['/location2'] = data2;

firebase.database().ref().update(updates);
Run Code Online (Sandbox Code Playgroud)

然而,当我正在开发一个新的应用程序时,我收到以下消息:

FIREBASE WARNING: Passing an Array to Firebase.update() is deprecated. Use set() if you want to overwrite the existing data, or an Object with integer keys if you really do want to only update some of the children.

没有关于如何在任何地方执行多位置原子更新的任何实际信息,并且文档仍然使用旧方法.链接then()不是一个好主意,因为回滚会是一场噩梦.

有关新的多位置更新方法的任何线索和/或信息?

Fra*_*len 11

我甚至都不知道你可以通过阵列.你应该改为传递一个对象:

const updates = {}; // this line is different
updates['/location1'] = data;
updates['/location2'] = data2;

firebase.database().ref().update(updates);
Run Code Online (Sandbox Code Playgroud)

我们用于设置属性的数组语法也适用于JavaScript对象.

  • 好吧,我觉得现在有些愚蠢.感谢您及时回复! (2认同)