0

我将一组对象存储在 firebase 中,并使用push来自服务器的方法,如下所示:

  firebaseRef.child('colors').push(body, (error) => {
    if(error) {
      res.send(500, error);
    }
    else {
      res.send(200);
    }

    return next();
  });

在我使用的客户端上:

model() {
  return this.store.findAll('color');
}

我有一个要清除数组的操作,我目前正在使用set([])如下所示:

firebaseRef.child('colors').set([], (error) => { ... });

如果我从管理门户查看数据,我可以看到颜色节点并且所有元素都被删除;但是,ember 客户端仍然显示数组中的所有项目。即使在我将一个项目添加到数组以使其长度为 1 之后,如果它之前有 23 个,它仍然可能显示 24 个。只有在我完全刷新客户端之后,它才能正确识别数组的长度。

如何以客户端保持同步的方式重置数组,而不必一个一个地删除每个元素?

4

1 回答 1

0

您直接从 firebase 清除数据,同时避免使用 ember 数据存储。要正确执行此操作,您必须通过“Ember 方式”从本地数据存储中清除它,然后将这些相同的更改推送到您的 firebase。

弄清楚如何从 ember 数据中清除颜色模型,你应该得到你期望的结果

于 2016-05-20T05:04:39.813 回答