私は私のAuth.$requiredAuth()
.config(function($stateProvider, $urlRouterProvider){
$stateProvider.state('cursustext', {
url: '/cursustext',
templateUrl: 'views/cursustext/cursustext.html',
controller: 'cursustextCtrl',
resolved: {
"currentAuth": ["Auth", function(Auth){
return Auth.$requireAuth();
}]
}
})
})
に問題がある -
.factory('Auth', function($firebaseAuth){
var auth = $firebaseAuth();
return auth;
})
を問題は次のとおりです。私がログインしていないよ場合は、私はまだページに行くことができます。
これを修正する方法を知っている人はいますか?敬具
、 JUR
EDIT/UPDATE
angular.module('myApp.cursustext', ['ui.router'])
.run(["$rootScope", "$state", function($rootScope, $state) {
$rootScope.$on("$stateChangeError", function(event, toState, toParams, fromState, fromParams, error) {
if (error === "AUTH_REQUIRED") {
$state.go('home');
}
});
}])
.config(function($stateProvider, $urlRouterProvider){
$stateProvider.state('cursustext', {
url: '/cursustext',
templateUrl: 'views/cursustext/cursustext.html',
controller: 'cursustextCtrl',
resolve: {
"currentAuth": ["Auth", function(Auth) {
return Auth.$requireSignIn();
}]
}
})
それが機能するようになりました。しかし、私がログインしていないときは、ホームページにリダイレクトされません。どうやって?ここ
私はそれを変更しましたが、今はエラーが発生しました: 'stateService.ts:525移行拒否($ id:0タイプ:6、メッセージ:移行エラー、詳細:TypeError:Auth。$ requireAuth is not関数) ' –
ok解決ブロックに達したら、このトピックが役立つかどうか確認してください。 https://stackoverflow.com/questions/35042270/issues-with-firebase-auth-requireauth – Karim
コメントの1秒前に私はそれを読んで、ありがとう。 –