0
:ログイン時に、新しいページにリダイレクトしたいと思います。 $state
を私のコントローラに渡そうとしていますので、$state.go()
を実行できますが、エラーはCannot read property 'go' of undefined
になります。Firebase認証とAngularFireによるログイン時のリダイレクト
私は電子メールとパスワード、Angular 1.5.8、ui-routerとAngularFireでFirebaseのログインを使用しています。
app.controller("AuthCtrl", ["$scope", "Auth", "$rootScope", '$state',
function($scope, Auth, $firebaseArray, $rootScope, $state) {
$scope.auth = Auth;
$scope.createUser = function() {
$scope.message = null;
$scope.error = null;
// Create a new user
Auth.$createUserWithEmailAndPassword($scope.email, $scope.password, $scope.name)
.then(function(firebaseUser) {
$scope.message = "User created with uid: " + firebaseUser.uid;
const uid = firebaseUser.uid;
const dbref = firebase.database().ref().child('users/'+uid);
const userInst = {}
dbref.update({id:uid, info: {name: $scope.name}});
}).catch(function(error) {
$scope.error = error;
});
};
$scope.signIn = function(){
Auth.$signInWithEmailAndPassword($scope.email, $scope.password).then(function(firebaseUser){
console.log(firebaseUser.uid);
$state.go('dashboard')
})
.catch(function(error) {
var errorCode = error.code;
var errorMessage = error.message;
});
}
$scope.deleteUser = function() {
$scope.message = null;
$scope.error = null;
$scope.auth.$onAuthStateChanged(function(firebaseUser) {
$scope.firebaseUser = firebaseUser;
});
// Delete the currently signed-in user
Auth.$deleteUser().then(function() {
$scope.message = "User deleted";
}).catch(function(error) {
$scope.error = error;
});
};
}
]);