Llo*_*nks 15 javascript angularjs firebase angularfire
我可以使用以下内容将对象添加到Firebase数据存储中:
var uniqueId = {
    name: "a name",
    location: "new york"
}
$scope.myItems.$add(uniqueId).then(function(firebaseId){
    // do something on success
}, function(){
    // do something if call fails
});
以上将在我的数据存储中添加一个对象,如果添加成功,则返回Firebase生成的ID.我刚刚添加的对象保存在此键下.
有没有办法让我在添加到数据存储时指定键名是什么?
Dav*_*ast 17
以下面的URL为例.
https://myapp.firebaseio.com/users/
假设我们想在这个位置创建一个密钥为1的用户.我们的网址看起来像这样.
https://myapp.firebaseio.com/users/1
要使用AngularFire创建用户,我们可以在用户节点创建一个引用,并调用$ child(1)来创建对该位置的引用.
var usersRef = new Firebase('https://myapp.firebaseio.com/users');
var userRef = new Firebase('https://myapp.firebaseio.com/user/1');
$scope.users = $firebase(usersRef);
// these are the same
$scope.userOne = $firebase(userRef);
$scope.userOne = $scope.users.$child(1);
然后我们可以$set用来存储该位置的用户值.
var usersRef = new Firebase('https://myapp.firebaseio.com/users');
$scope.users = $firebase(usersRef);
$scope.users.$child(1).set({
  first: 'Vincent',
  last: 'Van Gough',
  ears: 1
});
在你的情况下,它将是:
var uniqueId = {
    id: 1,
    name: "a name",
    location: "new york"
};
$scope.myItems.$child(uniqueId.id).$set(uniqueId);
请记住,使用$set会破坏该位置的所有先前数据.要非破坏性地更新值使用$update.
小智 9
你可以这样试试:
var empsRef = ref.child("employees");
empsRef.child('11111').set({
  lastname: "Lee",
  firstname: "Kang"
});
empsRef.child('22222').set({
  lastname: "Nut",
  firstname: "Dough"
});
输出应如下所示:
"employees" : {
  "11111" : {
    "lastname" : "Lee",
    "firstname": "Kang"
  },
  "22222" : {
    "lastname" : "Nut",
    "firstname": "Dough"
  }
}
| 归档时间: | 
 | 
| 查看次数: | 27899 次 | 
| 最近记录: |