通常如果我想将用户发送到特定状态,我只会这样做:
$state.go('state_name');
$state.transitionTo('state_name');
这通常会将他们带到/state_name
。但是,我有一个特定的状态,我试图将它们发送到其中有一个变量,如/state_name/:variable
,我似乎无法弄清楚如何将它们重定向到/state_name/whatever_I_choose
。
任何人都可以帮我解决这个问题吗?我也在使用ui-router
。
答案 0 :(得分:5)
您应该使用$state.go
内部呼叫$state.transitionTo
对于在路径中传递变量,您可以使用带有值的params
列表传递json。从重定向时传递值的控制器更改$scope.variable
。
$state.go('state_name',{variable: $scope.variable });
答案 1 :(得分:0)
变量通常在url中,而不是在州名中,如此
$stateProvider
.state('state_name', {
url: "/state_name/:Id",
templateUrl: 'state_name.html',
controller: stateCtrl
})