我在模板文件夹中有一个部分模板文件,包括
语言
<script type="text/javascript" src="controllers/languagesController.js"></script>
<div ng-controller="languagesController">
{{name}}
</div>
languagesController
hrmsApp.controller("languagesController",function($scope){
$scope.name = "test";
});
但app文件无法识别此功能内的控制器。
app.js
var hrmsApp = angular.module("hrmsApp",['ui.router','ngSanitize','ngResource']);
hrmsApp.config(function($stateProvider, $urlRouterProvider, $controllerProvider) {
$urlRouterProvider.otherwise('/');
hrmsApp.registerCtrl = $controllerProvider.register;
$stateProvider
.state("login",{
url : "/",
templateUrl : "/templates/login.php"
})
.state("dashboard", {
url : "/dashboard",
views : {
'' : {templateUrl : "/templates/dashboard.php"},
'navMenu@dashboard' : {templateUrl : "/templates/menu.php"}
}
})
.state("languages", {
url : "/languages",
views : {
'': {templateUrl : "/templates/languages.php",
controller : "languagesController"
},
'navMenu@languages' : {templateUrl : "/templates/menu.php"}
}
})
.state("logout", {
url : "/logout",
controller : "logout"
})
});
无法识别languagesController
内的“languagesController.js
”功能,并发生以下错误。
"Error: [ng:areq] Argument 'languagesController' is not a function"
但是当我在app.js
文件中放置相同的控制器函数时,该函数被识别,并且脚本文件也在部分模板中。我想将所有控制器文件保存在单独的目录中,以便于访问和维护。但放入单独的文件并调用该文件会引发错误。请建议一种方法,这样我的控制器应该位于不同的目录中,对控制器文件的调用应该在部分模板文件中。