angularJS与公共文件夹中的laravel部分模板javascript文件问题

时间:2014-06-05 04:07:32

标签: angularjs angularjs-routing

我在模板文件夹中有一个部分模板文件,包括

语言

<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文件中放置相同的控制器函数时,该函数被识别,并且脚本文件也在部分模板中。我想将所有控制器文件保存在单独的目录中,以便于访问和维护。但放入单独的文件并调用该文件会引发错误。请建议一种方法,这样我的控制器应该位于不同的目录中,对控制器文件的调用应该在部分模板文件中。

0 个答案:

没有答案