2

2 つの異なるセクションを持つ角度のあるアプリがあります。各セクションはユーザーのタイプに属します。いくつかの共通点はありますが、大部分はかなり異なります。例えば:

/receptionist
    - View Diary
    - Answer Phone
    - Make Tea 
/ceo
    - View Diary
    - Announce Earnings
    - Strategize

CEO と受付係の両方が、ダイアリーを表示するための機能を必要としています。ログインした人に応じて、ロードされるモジュール (およびルーティング) を変更したいと考えていました。

if (user.type === 'receptionist') {
    app = angular.module('receptionistApp', ['diary', 'phone', 'tea']);
else {
    app = angular.module('ceoApp', ['diary', 'earning', 'strategy']);
}

オーバーラップがあるので、これをやりたいと思っていますが、多くはありません。そして、各アプリは実際にはかなり大きいです。

ここでは、セキュリティに関する賢明なことは何も達成したくありません。各アプリには、さまざまな種類のユーザーと役割があります。これらは WebApi を通じて保護されます。モジュールの 45% が他のアプリにとって重要ではない場合に、すべてのモジュールをロードすることを避けたいだけです。

4

1 に答える 1

2

はい。

また、(おそらくこれは必要ないでしょう) モジュールをさらに動的にロードし、即座にロードする代わりに AngularJS を自分で初期化できます。ng-app ディレクティブを削除して、手動で初期化できます。

angular.element(document).ready(function() {
    angular.module('myApp', []);
    angular.bootstrap(document, ['myApp']);
});
于 2013-10-07T12:38:24.363 に答える