UI 路由器嵌套状态参数与父状态参数相同
UI Router nested state parameters are same as father state parameters
我有这样的路由:
$stateProvider
.state('Lorem', {
url: '/Lorem',
params: { type: 'A'},
templateUrl: 'views/lorem.html',
controller: 'loremCtrl as ctrl'
})
.state('Lorem.son', {
url: '/son',
params: { position: 'X'},
templateUrl: 'views/lorem.son.html',
controller: 'loremSonCtrl as ctrl'
})
当我去 /Lorem/son
路线时,我的 $stateParams
设置了父亲 Lorem
状态参数。
为什么会这样?
我只想读取 Lorem.son
状态参数。
有人可以帮助我吗?
状态 Lorem.son
的控制器根本没有被执行,这就是为什么您看不到 position
的值的原因。那是因为你没有使用 ui-view
指令。
您需要通过在 views/lorem.html
中添加以下内容来嵌套视图:
<div ui-view />
有关详细信息,请查看 documentation of ui-router。
检查此 plunker 以获得演示。
我有这样的路由:
$stateProvider
.state('Lorem', {
url: '/Lorem',
params: { type: 'A'},
templateUrl: 'views/lorem.html',
controller: 'loremCtrl as ctrl'
})
.state('Lorem.son', {
url: '/son',
params: { position: 'X'},
templateUrl: 'views/lorem.son.html',
controller: 'loremSonCtrl as ctrl'
})
当我去 /Lorem/son
路线时,我的 $stateParams
设置了父亲 Lorem
状态参数。
为什么会这样?
我只想读取 Lorem.son
状态参数。
有人可以帮助我吗?
状态 Lorem.son
的控制器根本没有被执行,这就是为什么您看不到 position
的值的原因。那是因为你没有使用 ui-view
指令。
您需要通过在 views/lorem.html
中添加以下内容来嵌套视图:
<div ui-view />
有关详细信息,请查看 documentation of ui-router。
检查此 plunker 以获得演示。