【问题标题】:Common controller for Multiple ng-app in AngularJSAngularJS 中多个 ng-app 的通用控制器
【发布时间】:2013-07-16 14:30:07
【问题描述】:

我有一个需要在多个 ng-app 范围内访问的通用控制器

例如:

控制器

function commonCtrl($scope){
    $scope.data = { message: "Hello World" };
}

第一个 ng-app

<div ng-app="firstApp">
    <div ng-controller="commonCtrl">
        <h1>{{data.message}}</h1>
    </div>
</div>

第二个 ng-app

<div ng-app="secondApp">
    <div ng-controller="commonCtrl">
        <h1>{{data.message}}</h1>
    </div>
</div>

这不起作用。我可以将范围设置为一个 ng-app,例如

angular.module('firstApp', [])

但是我怎样才能让控制器成为所有 ng-app 的通用控制器呢?

【问题讨论】:

    标签: javascript angularjs


    【解决方案1】:

    创建第三个模块并在该模块中定义控制器。在您创建的两个 ngApp 模块中引用新模块。此外,控制器必须使用模块控制器方法来定义。

    var sharedModule=angular.module('shared',[]);
    sharedModule.controller('commonCtrl',['$scope',function($scope) {
    
    }]);
    

    然后使用

    angular.module('firstApp', ['shared']);
    angular.module('secondApp', ['shared']);
    

    【讨论】:

    • 你能解释一下简单的例子吗!!
    猜你喜欢
    • 2015-08-23
    • 1970-01-01
    • 2013-09-05
    • 2016-06-28
    • 2016-04-01
    • 1970-01-01
    • 2023-03-21
    • 2013-07-21
    相关资源
    最近更新 更多