使用相同控制器的多个应用程序 - AngularJS

时间:2014-12-15 19:10:14

标签: angularjs controller

我的网站上的每个页面都有一个标题。这个标题容器菜单项,搜索等。我有一个名为'HeaderController'的控制器,在菜单中使用。我还有另一个控制器,用于页面的主要内容。我有以下代码允许我使用两个控制器:

 angular.module('customersApp')
   .controller('HeaderController', HeaderController)

当我尝试在“customersApp”之外的页面上使用同一个文件时遇到问题。例如,我有一个'deliveryApp',当我尝试在'deliveryApp'中的页面上运行顶部标题时,我得到一个错误,说'customersApp'不可用,我希望如此。

我不想为我的网站的每个部分制作新的标题和文件,因为必须更改5个不同的页面而不是1.我正在寻找一种方法将所有应用程序包含在上面的代码中。谢谢。

1 个答案:

答案 0 :(得分:1)

为标头控制器创建一个通用模块:

angular.module("common", [])
  .controller("HeaderController", HeaderController);

然后,将此模块作为depdendency添加到其他应用程序中。

angular.module("deliveryApp", ["common"]);

angular.module("customersApp", ["common"]);

确保常见的js文件也包含在每个应用的index.html中。