我正在使用Angular JS上的前端Web应用程序并使用UI路由器进行路由。
现在,我的孩子状态在多个州都是一样的。
$stateProvider.state('app.user1.viewProfile1', {
url: '/:profileURL',
views: {
'main@app.user': {
component: 'profile'
}
}
});
$stateProvider.state('app.user2.viewProfile1', {
url: '/:profileURL',
views: {
'main@app.user': {
component: 'profile'
}
}
});
$stateProvider.state('app.user3.viewProfile1', {
url: '/:profileURL',
views: {
'main@app.user': {
component: 'profile'
}
}
});
有没有办法不复制viewProfile子进程和后续状态定义,是否可以将同一个子进程附加到多个父进程?
答案 0 :(得分:2)
您可以在循环中删除状态和&迭代像 -
这样的状态angular.forEach(["parent.state1","parent.state2","parent.state3"], function(parent) {
$stateProvider.state(parent+".childState", {
url: '/child',
...
});
});