我正在使用 $state.go("titulos", params) 加载标题页面,在这种情况下不会再次加载父控制器(emissao)。但是当我调用孙子 $state.go("titulos.fluxos", params) 时,父控制器 (titulos) 会再次加载。我不希望这种情况发生,因为父控制器已经加载,这是不受欢迎的行为。我不知道为什么第一个孩子在没有加载父母的情况下完美地工作,但是对于孙子(titulos.fluxos)不必要地加载他的父母(titulos)。我怎么能解决这个问题?请。
$stateProvider.state('emissao', {
url: '/emissao',
views: {
'main': {
controller: 'emissaoCtrl',
templateUrl: 'view/emissao.html'
}
},
resolve: {
emissoes: function (cadastroAPI) {
return cadastroAPI.listar('emissao');
}
}
});
$stateProvider.state('titulos', {
parent: 'emissao',
url: '/titulos',
controller: 'titulosCtrl',
templateUrl: 'view/titulo.html',
resolve: {
titulos: function (cadastroAPI, $stateParams) {
return cadastroAPI.listarTitulos($stateParams.parent.obj);
}
},
params: {
parent: null,
container: null
}
});
$stateProvider.state('titulos.fluxos', {
url: '/fluxos',
controller: 'fluxosCtrl',
templateUrl: 'view/fluxo.html',
resolve: {
fluxos: function (fluxoAPI, $stateParams) {
return fluxoAPI.listar($stateParams.parent.obj.Id);
}
},
params: {
parent: null,
container: null
}
});