显然,当声明多个控制器时这是一个非常常见的问题,但是我尝试遵循的该论坛上的所有修复程序或其他任何地方似乎都没有起作用(可能丢失了某些内容)。
我有app.js文件和3个单独的控制器文件以及一个服务文件。
我使用了其中一个控制器,并且一切正常。现在,我试图重定向到由ProfileManagement控制器处理的另一个视图,但它显示错误:
错误:[ng:areq]参数'ProfileManagementController'不是一个函数,未定义
这是我在每个控制器文件和app.js开头的内容...
app.js:
var app = angular.module('starter', ['ionic', 'starter.controllers', 'starter.services']);
app.run(function($ionicPlatform) {...
在app.js中,在错误显示之前,我正在使用此路由:
.state('tab.home', {
url: '/home',
views: {
'tab-home': {
templateUrl: 'templates/tab-home.html',
controller: 'ProfileManagementController'
}
}
})
我的控制器在这里...
UserAccessController:
app.controller('UserAccessController', ['$scope', '$http', '$state', '$q', '$rootScope', 'CreateUserService', 'UserObjectService', function($scope, $http, $state, $q, $rootScope, CreateUserService, UserObjectService){
和ProfileManagementController:
app.controller('ProfileManagementController', ['$scope', '$http', function($scope, $http){
}]);
同样在ionic框架的tabs项目模板中,默认情况下,我得到了controller.js文件,在其中注释了所有控制器,但保留了第一行:
angular.module('starter.controllers', []);
//.controller('ProfileController', function($scope) {})
//
//.controller('OrdersController', function($scope) {
//
//})
//
//.controller('MoreOptionsController', function($scope, $stateParams) {
//
//})
//
//.controller('ConnectionsController', function($scope) {
//
//});
我在做什么错,导致出现错误消息?(实际上与路线tabs.home关联的视图已加载,但控制台显示了错误。
谢谢,
您可能忘记了添加脚本标记来在html中定义您的控制器。
例如:
<script src="yourController.js"></script>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句