1

いくつかの条件に基づいて実行時にロードしようとしているモジュールが2つあります。現在私はocLazyLoadモジュールを使用していますが、ロードされたモジュールはまったく動作していません。すべて正常にロードされ、エラーはスローされません。ocLazyLoadの有無にかかわらず、ランタイム時に角モジュールをロード

私が最初に私が本当に解決約束の内側に何

app.controller('c',function($ocLazyLoad){ 

    $ocLazyLoad.load('mod1').then(function(){ 
      console.log('module loaded!'); 
    }); 
}) 

どこかに私のコントローラで、その後

var app = angular.module('myApp',['oc.lazyLoad']) 

app.config(['$ocLazyLoadProvider',function(){ 
    modules : [{ 
     name : 'mod1', 
     files : [CDN-Path] 
    }] 
}]); 

私のメインモジュールを宣言するとは、私はUI-ルータに新しい状態を登録することですその状態ではmod1に定義されているディレクティブのいくつかを使用しますが、それらは単に機能しません。モジュールのロード後に実行する必要がある初期化はありますか?

答えて

1

することはでき怠惰な負荷以下のように表示する前に、任意のモジュール/ディレクティブ/コントローラ/ javascriptの(jqueryの同様):controllerui-bootstrap遅延ロードされたで

angular.module('app', ['ui.router', 'oc.lazyLoad']).config(['$stateProvider', '$ocLazyLoadProvider', function ($stateProvider, $ocLazyLoadProvider) { 
     $ocLazyLoadProvider.config({ 
      modules : [{ 
        name : 'TestModule', 
        files : ['js/TestModule.js', 'js/AppCtrl.js'] 
       } 
      ] 
     }); 

     $stateProvider.state('index', { 
      url : "/", // root route 
      views : { 
       "lazyLoadView" : { 
        controller : 'AppCtrl', // This view will use AppCtrl loaded below in the resolve 
        templateUrl : 'partials/main.html' 
       } 
      }, 
      resolve : { // Any property in resolve should return a promise and is executed before the view is loaded 
       loadMyCtrl : ['$ocLazyLoad', function ($ocLazyLoad) { 
         // you can lazy load files for an existing module 
         return $ocLazyLoad.load('TestModule'); 
        } 
       ] 
      } 
     }); 
    } 
]); 

https://oclazyload.readme.io/docs/with-your-router

編集Plunkerサンプル:https://plnkr.co/edit/pUq3b1TDkwdGQOftcWDL?p=preview

+0

私はこれを読んだが、ここでの問題はモジュールが読み込まれていないことではないing。彼らはロードして登録します。私は 'angular.module( 'mod1')'を実行してそれを取得できますが、現在のモジュールの依存関係として追加されていないという問題があります。新しく登録されたモジュールから機能(ディレクティブなど)を実装する新しい要素を追加できるようにするために、 –

+0

私はおそらく何かを見逃して同じ方法で応答した場合にそれを試したところです –

+0

私はplunkerサンプルを持っていました。 :) –

関連する問題