我正在使用UI-Router构建具有嵌套状态的应用程序。
到目前为止,第一个状态解析为OK并返回在前端显示的对象数组(公平)。
$stateProvider.state('berliner', {
url: '/berlinerliste/',
views: {
'header': {
templateUrl: 'header.htm'
},
'main':{
templateUrl: 'bl2017.htm'
}
},
params : {search: 'Berliner 2017'},
resolve: {
fair: function(SearchService, $stateParams) {
return SearchService.getAllExhibitors($stateParams.search);
}
}
})
$stateProvider.state('berliner.exhibitor', {
url: '/berlinerliste/{id}',
views: {
'header': {
templateUrl: 'header.htm'
},
'main':{
component: 'exhibitor'
}
},
resolve: {
exhibitor: function($stateParams, fair) {
return $filter("filter")(fair, {'slug':$stateParams.id}, true);
}
}
})
当我点击其中一个对象时,没有任何反应。
嵌套状态解析应采用fair
数组并过滤掉'slug':$stateParams.id
的对象。
这是templateUrl: 'bl2017.htm'
上我将id
参数分配给嵌套状态的部分:
<article ng-repeat="exhibitor in datafairs" ui-sref="exhibitor({ id: exhibitor.slug })" >
哦,嵌套状态有一个绑定到它的组件:
.component('exhibitor', {
bindings: { exhibitor: '<' },
templateUrl: 'exhibitor.htm',
})