我想知道如何在存储到Firebase时构建Angular控制器中的实际推送和更新方法.目前我认为有很多重复的代码和糟糕的结构.它看起来像这样:
app.controller( "myController", [ "$scope", "$routeParams", function( $scope, $routeParams ) { $scope.id = $routeParams.id; $scope.save = function() { if( $scope.id ) { // Update } else { // Save } } } ] );
更新和保存之间的唯一区别是用于使用Firebase存储数据的方法(推送/更新).否则,存储的对象几乎相同,并且回调的处理方式相同.这给了很多重复的代码.我如何以良好的方式构建这个以防止重复的代码?
使用AngularFire.
AngularFire是官方支持的AngularJS Firebase绑定.它提供了帮助进行同步收集和身份验证的服务.
AngularFire在这里真正可以帮到您的是通过resolve
路由器中的对象将同步集合注入控制器.
angular.module('app', ['firebase', 'ngRoute']) .config(ApplicationConfig) .constant('FirebaseUrl', '