Angularスクリプトで複数のモジュールを作成することはできますか?私はドキュメントを調べて、それが何らかの主要なメソッド概念であることを学びました。
これを実証するための例が必要です。
はい、以下に示すように、angularJSで複数のモジュールを定義できます。
var myApp = angular.module('myApp', [])
var myApp2 = angular.module('myApp2', [])
ただし、次のように各モジュール宣言中に依存関係を定義することを忘れないでください。 myApp2がmyAppに依存していると仮定しましょう。したがって、宣言は次のようなものになります。
var myApp = angular.module('myApp', [])
var myApp2 = angular.module('myApp2', ['myApp'])
AngularJSのモジュール化は、複数のモジュールを組み合わせてアプリケーションを生成できるため、コードをわかりやすく理解しやすくするのに役立ちます。ただし、タイプではなく機能に基づいてコンポーネントをモジュール化する必要があることに留意する必要があります。
HTMLドキュメントごとに自動ブートストラップできるAngularJSアプリケーションは1つだけです。ドキュメントで最初に見つかったngAppは、アプリケーションとして自動ブートストラップするルート要素を定義するために使用されます。 HTMLドキュメントで複数のアプリケーションを実行するには、手動でbootstrap代わりにangle.bootstrapを使用する必要があります。AngularJSアプリケーションは相互にネストできません。 http://docs.angularjs .org/api/ng.directive:ngApp 参照
https://groups.google.com/d/msg/angular/lhbrIG5aBX4/4hYnzq2eGZwJhttp://docs.angularjs.org/api/angular.bootstrap
ng-appは1つだけ使用できますが、次のように2つのモジュールを組み合わせることができます。
var moduleA = angular.module("MyModuleA", []);
moduleA.controller("MyControllerA", function($scope) {
$scope.name = "Bob A";
});
var moduleB = angular.module("MyModuleB", []);
moduleB.controller("MyControllerB", function($scope) {
$scope.name = "Steve B";
});
angular.module("CombineModule", ["MyModuleA", "MyModuleB"]);
その後 ng-app="CombineModule"
私は彼がngAppとモジュールを混同していると思う、1つのページに1つのアプリケーション(ng-app)だけがあり、アプリのビュー(ngViewまたは<ng-view>)は一度だけしか存在できない。ただし、前の回答で述べたように、必要な数のモジュールを作成し、それらを「メイン」アプリケーションモジュールに依存関係として挿入できます。私は通常、独自のモジュールでディレクティブ、フィルター、コントローラーなどを分離するためにこれを行います。
編集:
ngApp- http://code.angularjs.org/1.1.5/docs/api/ng.directive:ngApp
もちろんできます。作成したいモジュールの数だけangular.module('moduleName', [/* dependencies */])
を使用してください。
以前に定義したモジュールへの参照を取得するには、var myModule = angular.module('moduleName');
を実行し、次にmyModule.controller(...)
、myModule.config()
、myModule.constant()
などを実行します。
推奨プロジェクトレイアウト(Angular Seed)を参照)には、アプリ用のモジュールがあり、次にコントローラー用、サービス用、フィルター用、さらにディレクティブ用のモジュールがあります。 単なる提案 。他の人は 代替レイアウト を提案します。
複数モジュールとはどういう意味ですか?モジュールを別のモジュールに挿入できます
angular.module(name[ anotherModule]);