我有这个状态配置:
function routeConfig($stateProvider, $urlRouterProvider) {
$stateProvider
.state('projects', {
url: '/projects',
template : '<ui-view autoscroll="true" autoscroll-body-top></ui-view>',
abstract: true,
title: 'Les projets',
controller : 'ProjectController',
}) .state('projects.add', {
url: '/add',
templateUrl: 'http://localhost:8080/gestionprojet/projects',
title: 'Ajouter un projet',
})
.state('projects.detail', {
url: '/detail',
params : { projectId : null},
templateUrl: 'http://localhost:8080/gestionprojet/detailProject',
resolve : {
project: function (projectFactory, $stateParams) {
return projectFactory.getProject($stateParams.projectId);
},
projectTasks : function (projectFactory, $stateParams) {
return projectFactory.getProjectTasks($stateParams.projectId);
}
},
title: 'Detail du projet',
});
}
在我的 Controller 中:
angular.module('BlurAdmin.pages.projects')
.controller('ProjectController', ProjectController);
function ProjectController($state, $stateParams, $log, $scope, projectFactory, taskFactory, project, projectTasks) { ... }
如果我转到project.add
,我会收到此错误:
Unknown provider: projectProvider <- project <- ProjectController
如何解决这个问题?谢谢。
最佳答案
嵌套解析的变量无法注入(inject)到父 Controller 中。请参阅here
关于javascript - 子状态解析注入(inject)到父 Controller 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41596584/