Angularjs 使用 url 重定向到状态
Angularjs redirect to state using a url
通常,如果我想将用户发送到特定状态,我会这样做:
$state.go('state_name');
$state.transitionTo('state_name');
这通常会将他们带到 /state_name
。但是,我有一个特定的状态,我试图将它们发送到其中有一个变量,如 /state_name/:variable
,我似乎无法弄清楚如何将它们重定向到 /state_name/whatever_I_choose
.
谁能帮我解决这个问题?我也在用 ui-router
。
你应该使用 $state.go
内部调用 $state.transitionTo
为了在路由中传递变量,您可以将 json 与 params
列表一起传递,其中包含值。 $scope.variable
由在重定向时传递值的控制器更改。
$state.go('state_name',{variable: $scope.variable });
变量通常进入 url 而不是状态名称,像这样
$stateProvider
.state('state_name', {
url: "/state_name/:Id",
templateUrl: 'state_name.html',
controller: stateCtrl
})
通常,如果我想将用户发送到特定状态,我会这样做:
$state.go('state_name');
$state.transitionTo('state_name');
这通常会将他们带到 /state_name
。但是,我有一个特定的状态,我试图将它们发送到其中有一个变量,如 /state_name/:variable
,我似乎无法弄清楚如何将它们重定向到 /state_name/whatever_I_choose
.
谁能帮我解决这个问题?我也在用 ui-router
。
你应该使用 $state.go
内部调用 $state.transitionTo
为了在路由中传递变量,您可以将 json 与 params
列表一起传递,其中包含值。 $scope.variable
由在重定向时传递值的控制器更改。
$state.go('state_name',{variable: $scope.variable });
变量通常进入 url 而不是状态名称,像这样
$stateProvider
.state('state_name', {
url: "/state_name/:Id",
templateUrl: 'state_name.html',
controller: stateCtrl
})