[英]Change page with $state.go()
這可能是菜鳥的錯誤,但我無法使用以下方法來更改頁面:
$state.go('login');
我的路由如下所示:
$stateProvider
.state('login', {
url: "/login",
templateUrl: "./auth/login.html",
controller: 'loginCtrl'
})
我還添加了一個
$rootScope.$on("$stateChangeStart", function (event, next) {...}
只是在我使用$ state.go()之后檢查它是否到達那里,是的; 它到達那里,但根本不會改變我的頁面或URL。 在view.html中使用ui-sref="login"
可以更改頁面。
我嘗試過的其他語法:
$state.go('login', null, {options: { location : true } } );
$state.go('login', {}, {location : true});
順便說一句,當用戶未在$ stageChangeStart-event內部獲得授權時,我要嘗試完成的操作是重定向到登錄頁面。
有任何想法嗎?
訪問Angular ui路由器-重定向根本不起作用 。 它使我對自己做錯了什么有一個更清晰的認識。
在以下頁面上找到了我的實際解決方案,由frankwallis回答:
https://github.com/angular-ui/ui-router/issues/600
我替換了默認的$urlRouterProvider.otherwise('/yourpage');
與
$urlRouterProvider.otherwise( function($injector, $location) {
var $state = $injector.get("$state");
$state.go("app.home");
});
太糟糕了,我不太了解該解決方案,但至少現在可以使用!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.