加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – Firebase AngularFire隐式和显式同步之间的差异

发布时间:2020-12-17 08:53:45 所属栏目:安全 来源:网络整理
导读:我是firebase的新手.我想用 angularjs构建它,我发现了angularfire. 在列出的angularFire文档中 隐式和显式同步.我试图理解github中的文档,但我仍然不明白有什么区别以及如何使用它们. angularFire()和angularFireCollection() 另外,angularFire()和angularFi
我是firebase的新手.我想用 angularjs构建它,我发现了angularfire.

在列出的angularFire文档中
隐式和显式同步.我试图理解github中的文档,但我仍然不明白有什么区别以及如何使用它们.
angularFire()和angularFireCollection()

另外,angularFire()和angularFireCollection()中的参数是什么意思?

谢谢你

如果要进行隐式同步,请使用angularFire,即对模型所做的任何更改都会立即传播到所有其他客户端(反之亦然).

如果要控制何时必须将任何本地数据更改发送到服务器,请使用angularFireCollection.任何远程更改仍将自动更新您的本地集合.

隐式同步:

myapp.controller('MyCtrl',['$scope','angularFire',function MyCtrl($scope,angularFire) {
    var promise = angularFire(url,$scope,'items',[]);
  }
]);

第一个参数是您要存储/检索数据的Firebase的位置.第二个参数是范围,第三个参数是$scope下的属性名称,您希望在履行承诺后立即绑定数据.例如:

promise.then(function() {
  // Data available in $scope.items
});

第四个参数是您在JS对象中需要的数据类型.使用[]表示数组,{}表示对象,“”表示字符串,1表示数字,true表示布尔值.请注意,如果提供的Firebase位置中没有数据,您也可以使用此参数来设置默认值.

在隐式同步中,如果要进行任何更改,只需修改$scope.items,更改将自动通过Firebase与所有其他客户端同步.同样,远程进行的任何更改都将自动更新$scope.items.

显式同步:

myapp.controller('MyCtrl','angularFireCollection',angularFireCollection) {
    $scope.items = angularFireCollection(url);
  }
]);

此方法只接受一个参数.如果要添加或删除项目,请使用添加,删除或更新方法.例如:

$scope.items.add({test: "object"});

由于angularFireCollection不需要范围,如果你想在控制器之外使用Firebase(如角度指令,模块等),你也可以使用它.希望这有帮助!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读