【问题标题】:How to separate controllers in different files for angularjs?如何为angularjs分离不同文件中的控制器?
【发布时间】:2015-09-14 15:28:34
【问题描述】:

我有一个全局 routes 控制器,并想为每个页面模板创建一个额外的控制器。

如下:

var app = angular.module('myapp', ['ngSanitize', 'ngRoute']);

app.config(function($routeProvider){
    $routeProvider
        .when("/test", {
            templateUrl:    "./templates/test.html",
            controller:     "testController"
        })
});

app.controller('test', function() {
    //...
});

问题:如何将控制器移动到它自己的testController.js 文件中?我试过了,但是控制器不再工作了。

如果我将控制器提取到自己的文件中,我必须采取哪些步骤?

  1. 如何从 testController.js 中访问 var app 模块变量?
  2. 我是否必须将每个控制器作为新的<script src="js/testController.js"></script> 标记条目包含在我的html 模板中?这会很麻烦,因为我想将我的应用程序拆分为多个控制器,这会导致很多导入。

【问题讨论】:

标签: javascript html angularjs


【解决方案1】:

你可以访问app,只需声明它而不需要依赖:

var app = angular.module('myapp');
app.controller("testController", function() {

});

是的,您需要在每个需要它的页面上包含testController.js

【讨论】:

  • @MedetTleukabiluly -- 我错过了问题的一部分吗?
  • 我的意思是问题太简单了,答案也太简单了
  • @MedetTleukabiluly -- 所以你投反对票的原因是因为这个问题“简单”?
猜你喜欢
  • 1970-01-01
  • 2015-09-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多