带有嵌套视图的Angularjs ui路由器正在为孙子加载父控制器

带有嵌套视图的Angularjs ui路由器正在为孙子加载父控制器,angularjs,nested,angular-ui-router,views,state.go,Angularjs,Nested,Angular Ui Router,Views,State.go,我使用$state.go(“titulos”,params)加载titulos页面,在这种情况下,不会再次加载父控制器(emissao)。但是当我调用孙子$state.go(“titolos.fluxos”,params)时,父控制器(titolos)将再次加载。我不希望发生这种情况,因为父控制器已经加载,这是一种不需要的行为。我不知道为什么第一个孩子在不加载父母的情况下工作得很好,但是对于孙子(titulos.fluxos)来说,不必要地加载他的父母(titulos)。 我怎样才能解决这个问题

我使用$state.go(“titulos”,params)加载titulos页面,在这种情况下,不会再次加载父控制器(emissao)。但是当我调用孙子$state.go(“titolos.fluxos”,params)时,父控制器(titolos)将再次加载。我不希望发生这种情况,因为父控制器已经加载,这是一种不需要的行为。我不知道为什么第一个孩子在不加载父母的情况下工作得很好,但是对于孙子(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
    }
});

我发现了问题!实际上,正常行为不会加载父控制器,我的问题是“params”参数在父控制器“titulos”和子控制器“fluxos”中都具有相同的名称“parent”,这导致对父控制器进行了不必要的调用。

我不知道如何将此答案视为已接受:-(