【问题标题】:Firebase createUser method returning undefinedFirebase createUser 方法返回未定义
【发布时间】:2015-01-02 07:55:29
【问题描述】:

我一直在尝试注册用户的 Firebase 文档。我正在使用 Angular 1.3 和 Firebase 1.0.24。

我只是想创建一个用户。

这是我的 Firebase 规则:

{
  "rules": {
      ".read": true,
      ".write": true
  }
}

我的标记成功地将用户保存到 $scope.user($scope.user.email 和 $scope.user.password)。

在我的控制器中,我有以下内容:

angular.module('app')
    .controller('RegisterCtrl', ['$scope','$firebase', 'RegisterFactory', 
        function ($scope, $firebase, RegisterFactory) {

        $scope.submit = function() {

                RegisterFactory.Register($scope.user);

            }
        };
}]);

控制器将$scope.user信息发送给RegisterFactory,如下:

angular.module('app')
    .factory('RegisterFactory', ['$firebase', function($firebase) {
        return {

            Register: function(user) {

                var ref = new Firebase('https://[redacted].firebaseio.com');

                ref.createUser({
                    email: user.email,
                        password: user.password
                }, function(error) {
                    if (error === null) {
                        console.log('User created!');
                        } else {
                        console.log('Error creating user', error);
                    }
                });
            }
        };          

}]);

当我在输入字段中输入信息并提交注册用户时,我收到以下错误:

TypeError: undefined is not a function at Object.Register它指向工厂线 13:10,即: ref.createUser({

我知道 Firebase 简单登录已被弃用,并且 Firebase 现在具有授权功能,但我不知道我做错了什么。我正在关注 Firebase 文档的这一部分:https://www.firebase.com/docs/web/guide/login/password.html

感谢任何帮助。

【问题讨论】:

    标签: javascript angularjs authentication firebase angularfire


    【解决方案1】:

    对于 Firebase 1.0.24,您需要使用 Firebase 简单登录库。

    你可以在 Github 上找到文档:https://github.com/firebase/firebase-simple-login/blob/master/docs/v1/api.md

    您所指的文档适用于最新的 Firebase 版本。

    【讨论】:

    • 就是这样。我忘记了安装 AngularFire 要求我使用 1.0.24 而不是 2.0 并且我降级了。作为旁注 - AngularFire 的任何版本都与 Firebase ~2.0 兼容吗?我喜欢 Firebase 在 2.0 上的内置身份验证...
    • 我认为 0.8.4 是兼容的。到目前为止没有问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-14
    • 1970-01-01
    • 1970-01-01
    • 2019-04-05
    相关资源
    最近更新 更多