0

我使用隐式方法来检索数据对象:

setData = function(segment){
  var url = 'https://myFireBase.firebaseio.com/';
  var rawData = angularFire(url+segment,$rootScope,'data',{});
  rawData.then(function(data){
    // sorting and adjusting data, and then broadcasting and/or assinging
  }
}

此代码位于从不同位置调用的服务中,到开发阶段它可能在 100 - 150 左右,所以我离开控制器并进入服务,但现在 firebase 数据绑定显然会覆盖不同segment的 s 所以我转回显式方法,让不同的 firebase 只将数据发送到站点,而不是数据绑定和相互覆盖:

var rawData = angularFireCollection(url+segment);

就在那里,我发现了为什么我首先选择隐式:typeof 有一个参数,如果我正在调用字符串、数组、对象等,我可以告诉 firebase。我什至查看了 angularfire.js 和看到如果没有给出参数,如果默认情况下将其标识为数组。

现在,我肯定会转向显式方法(也就是说,如果 angular2.0 没有拯救),并且重建我的 firebase json 以适应仅数组策略并不是什么大不了的事,但肯定有显式调用对象的选项,还是我遗漏了什么?

4

1 回答 1

1

我不完全清楚问题是什么 - 使用 angularFireCollection,您当然可以很好地检索对象。例如,在捆绑的聊天应用程序中(https://github.com/firebase/angularFire/blob/gh-pages/examples/chat/app.js#L5):

$scope.messages = angularFireCollection(new Firebase(url).limit(50));

每条消息都存储为一个对象,具有由 生成的自己的唯一键push()

我也很好奇您在应用程序增长时使用隐式方法时发现了什么问题。我们真的希望在 angularFire 的下一次迭代中解决这些问题!

于 2013-06-08T01:30:05.960 回答