Angularjs 从ng路由更改为ui路由器$routeChangeSuccess不起作用
我想将上面的代码从ng route更改为ui router。我将其他人更改为stateProvider和stateParams,但不知道$routeChangeSuccess将如何更改为$StateChangeSucces?您应该使用Angularjs 从ng路由更改为ui路由器$routeChangeSuccess不起作用,angularjs,angular-ui-router,ngroute,Angularjs,Angular Ui Router,Ngroute,我想将上面的代码从ng route更改为ui router。我将其他人更改为stateProvider和stateParams,但不知道$routeChangeSuccess将如何更改为$StateChangeSucces?您应该使用$StateChangeSucces而不是$routeChangeSuccess $scope.$on("$routeChangeSuccess", function (event, next, current) { switch (
$StateChangeSucces
而不是$routeChangeSuccess
$scope.$on("$routeChangeSuccess", function (event, next, current) {
switch (next.originalPath) {
case "/ac" :
$scope.currentTab = 1;
break;
case "/bp/:type?/:tab?":
$scope.currentTab = 2;
break;
case "/bs":
$scope.currentTab = 3;
break;
default :
$scope.currentTab = 1;
break;
}
});
$stateChangeStart
-转换开始时激发
您应该使用
$stateChangeSucture
而不是$routeChangeSuccess
,如所示
$stateChangeStart
-转换开始时激发
是的,我成功了。从这里查看更多信息是,$statechangesucture。从这里可以看到更多 toState.url将给出更改后的url,并且可以执行与此相关的操作 toState.url将给出更改后的url,并且可以执行与此相关的操作
$rootScope.$on('$stateChangeSuccess',
function(event, toState, toParams, fromState, fromParams){ ... })
$rootScope.$on("$stateChangeSuccess", function () {
});
$scope.$on("$stateChangeSuccess", function (event, toState, toParams, fromState, fromParams) {
switch ( toState.url ) {
case "/ac" :
$scope.currentTab = 1;
break;
case "/bp":
$scope.currentTab = 2;
break;
case "/bs":
$scope.currentTab = 3;
break;
default :
$scope.currentTab = 1;
break;
}
});