我有一个状态(portoflio.patent
),该状态充当抽象状态,以将已解析的数据提供给多个子状态,如下所示:
.state('portfolio', {
url: '/portfolio',
templateUrl: 'app/templates/portfolio/portfolio.tpl.htm',
controller: 'portfolioCtrl',
controllerAs: '$ctrl'
})
.state('portfolio.patent', {
templateUrl: 'app/templates/patent/patent.patent-item.tpl.htm',
abstract: true,
url: '/:id',
resolve: {
data: ['service', function(service) {
//returns data
}]
},
params: {
id: null
}
})
.state('portfolio.patent.patent-info', {
templateUrl: 'app/templates/patent/patent.patent-info.tpl.htm',
controller: 'patentInfoCtrl',
controllerAs: '$ctrl'
})
.state('portfolio.patent.euro-pct', {
abstract: true,
templateUrl: 'app/templates/patent/patent.europct.tpl.htm',
controller: 'euroPctCtrl',
controllerAs: '$ctrl',
})
当我单击父状态为portfolio
的项目时,它在访问{id: 0}
时会传递参数portfolio.patent.patent-info
并且有效。刷新页面时,它不会注册URL并显示空白屏幕。如果我将网址从portfolio.patent
状态移到portfolio.patent.patent-info
状态,它可以刷新,但是会出现包含URL并将参数传递给所有子状态的问题
问题
为什么我的URL没有在页面刷新和加载portfolio.patent.patent-info
上注册?