私は現在、angular-http-authというイベントからの状態遷移を処理しているライブラリを使用している問題を抱えています:のイベント:イベントです。私は私のルーティングシステムにangular-ui-routerを使用しています。
とにかくここにイベントを発行ライブラリーからのコードのいくつかの作品だ:私は
$rootScope.$on('event:auth-loginRequired', function(){
console.log('Token Invalid/Expired');
$state.transitionTo('login');
});
case 401:
var deferred = $q.defer();
httpBuffer.append(config, deferred);
$rootScope.$broadcast('event:auth-loginRequired', rejection);
return deferred.promise;
そして、私はmyApp.run内のコードのこれらの部分でのイベントをキャッチされました私のコンソールの中でトークンが無効/期限切れになったを得ることができました。しかし、状態遷移はまったく機能しませんでした。私はコンソール上でエラーも出ませんでした。私は$ location.path( '/ login')を使用しようとしましたが、動作しません。
解決方法を教えてもらえますか?どんな種類の助けも本当に感謝しています。ありがとう!
'$ state.transitionTo'の代わりに' $ state.go'を使用してみてください。私はそれが同じだと信じていますが、デフォルトでいくつかのパラメータを設定しています。 http://angular-ui.github.io/ui-router/site/#/api/ui.router.state.$state – glcheetham
お返事ありがとうございます!私もそれを試みましたが、それはまだ動作しません:( –