我有一些状态路由,如:
.state. ('home', { ... })
.state('home.company', {
url: 'company/{ID:int}',
abstract: true,
template: '<ui-view/>'
})
.state('home.company.list', {
url: '/list',
views: { ... }
我想使用这样的东西:
ui-sref="home.company({ ID: id }).list"
导航到州。但它不起作用。我也试着做以下事情:
ui-sref="home.company.list({ ID: id })"
这也不起作用。任何提示如何使其工作?
P.S。如果我使用过它会起作用:
$state.go(route, { ID: id });
state
的位置'home.company.list'
。但这并不是我目前想要实现的目标。
P.P.S 这是我得到的错误:
错误:无效状态参考&#39; home.company({ID:id})。list&gt;
答案 0 :(得分:2)
上述状态似乎没问题。我只是稍微调整了一下它就可以了。
<ui-view />
转换为更常见且受支持的<div ui-view=""></div>
这是片段
$stateProvider
.state('home', {
template: '<div ui-view=""></div>',
url: "/home"
})
.state('home.company', {
url: 'company/{ID:int}',
abstract: true,
template: '<div ui-view=""></div>',
})
.state('home.company.list', {
url: '/list',
views: {
'': {
templateUrl: 'tpl.html',
}
}
})
这些链接可以实现预期的目标
<a ui-sref="home.company.list({ ID: 1 })">
<a ui-sref="home.company.list({ ID: 22 })">
检查here