1

複数の ng-app スコープでアクセスする必要がある共通のコントローラーがあります

元:

コントローラ

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

最初の ng アプリ

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

2 番目の ng-app

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

これは機能していません。スコープを 1 つの ng-app のように設定できます

angular.module('firstApp', [])

しかし、コントローラーをすべてのng-appの共通コントローラーとして作成するにはどうすればよいですか?

4

1 に答える 1

7

3 番目のモジュールを作成し、そのモジュールでコントローラーを定義します。作成した 2 つの ngApp モジュールで新しいモジュールを参照します。また、コントローラは、モジュール コントローラ メソッドを使用して定義する必要があります。

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

}]);

次に使用します

angular.module('firstApp', ['shared']);
angular.module('secondApp', ['shared']);
于 2013-07-16T14:37:05.430 に答える