我对此处于僵局。我正在尝试使用$ firebaseAuth来创建一个使用AngularFire的用户,不要使用已弃用的FirebaseSimpleLogin,正如文档中的建议。我敢肯定的是,表单提交一个有效的电子邮件和密码,但我不断收到以下错误控制台:
Error: Firebase.createUser failed: First argument must contain the key "email" with type "string"
你可以看到代码,我使用工厂服务来处理$的createUser方法,这是错误发生的地方,因为随后的console.logs在方法返回时不会触发。请注意,我也尝试在文档中使用样板代码,而不是在控制器和服务之间进行拆分,并且收到相同的错误。非常感谢您的帮助,谢谢!表格元件上
纳克提交= “寄存器()”
$scope.register = function(){ console.log($scope.user); // logs object correctly // Authentication is passed into the controller as a dependency Authentication.register($scope.user) .then(function(){ //This does NOT fire console.log("User created successfully!"); Authentication.login($scope.user);
}) .then(function(authData){ console.log("Logged in as:", authData.uid); }) .catch(function(error) { console.log('error'); $scope.errorMessage = error.toString(); }); };
认证工厂服务
var obj = {
register: function(user){
var obj = {email: user.email, password: user.password};
console.log(obj); // works correctly
//var auth has the reference to Firebase
return auth.$createUser(obj);
}
};
工作,是的文档看起来像你必须传递一个对象,特别是因为$ authWithPassword需要一个对象登录。谢谢,Firebase简直太棒了! – FugueWeb 2014-11-23 21:52:35
明天(星期一)第一件事将修复文档。如果您发现任何其他文档问题,请告诉我们。我们尽量保持它们尽可能准确,但它们不断得到改进。我们可能会支持将所有争论作为对象在未来通过的能力,但我需要与我的同事讨论这一点。 – jwngr 2014-11-24 01:13:29
嘿@jacobawenger文档仍然不是最新的;) – qmmr 2015-01-04 20:49:19