我正在使用Angular UI Router 1.0.0-beta.1
。尝试从/myroute/new
状态转换为/myroute/5
。由于id为5的状态与new
状态非常相似,因此我不想重置重要的用户状态。
我尝试了相当充分记录的方法,例如使用transitionTo
方法,例如:$state.transitionTo(myRoute, params, {notify: false});
,但这仍然会刷新应用。
如何以静默方式从第一个网址转换到另一个网址?
答案 0 :(得分:1)
您可以将自己的资源定义为dynamic
,然后使用$state.params
在代码中阅读。
您在哪里定义州:
$stateProvider.state({
url: '/myroute/:id',
params: {
id: {
dynamic: true
...
在你的控制器中,注入$state
,然后你可以读取逻辑中的参数。您还可以在控制器上放置uiOnParamsChanged
方法以侦听已更改的参数。这是1.0.0-beta.3。更多阅读:https://github.com/angular-ui/ui-router/issues/1758