ngtemplate-loader
ngtemplate-loader copied to clipboard
module( 'x' ).run() will not run asynchronously
Hi, I'm trying to build a SPA which load controllers and templates asynchronously. I have a dashboard module like below:
var html = require( './view.html' );
angular.module( 'app' ). controller( 'dashboardCtrl', function(){
/../
});
and in some point I will dynamically load this module:
require.ensure( [ 'dashboard' ], function(){
....
})
In the dev mode, I can see that ngtemplate-loader had generated the correct code, but I can not get the html from $templateCache.get(), then I hack the source code of ngTemplate-loader, add some debug code ( like alert(1) ) into the callback of module( 'x' ).run(), but the hack code is not executed.
I think the problem is that angular.module.run will not be executed again after angular finished its initialization.
I did a little test below:
angular.module( 'app', [] );
angular.module( 'app' ).run(function(){ console.log( 'run 1' ); }); // output: "run 1"
setTimeout(function(){
angular.module( 'app' ).run(function(){
console.log( 'run 2' ); // never executed.
});
}, 1000);
this https://github.com/WearyMonkey/ngtemplate-loader/pull/26 seems to solve this problem
The same issue when define route templateUrl, how do you resolve this? @neekey