使用requireJS管理JS,angularJS就不需要用ng-app了吗
1个回答
展开全部
由于require.js是异步加载的,而不是阻塞,所以用require.js加载angular时,如果在html中定义了ng-app,很容易出现这样的情况。
所以我们不能直接以ng-app来定义angular的模块
解决方法如下:
define([ 'angular' , 'angular-ui-router' ] , function( angular ){
window.name = 'NG_DEFER_BOOTSTRAP';
var isloaded = false;
var timer = setInterval(function(){
angular.element(document).ready(function(){
angular.bootstrap(document,["My_app"]);
isloaded = true;
});
if(isloaded === true){
clearInterval(timer);
}
},300);
return angular.module('My_app',['ui.router']);
});
所以我们不能直接以ng-app来定义angular的模块
解决方法如下:
define([ 'angular' , 'angular-ui-router' ] , function( angular ){
window.name = 'NG_DEFER_BOOTSTRAP';
var isloaded = false;
var timer = setInterval(function(){
angular.element(document).ready(function(){
angular.bootstrap(document,["My_app"]);
isloaded = true;
});
if(isloaded === true){
clearInterval(timer);
}
},300);
return angular.module('My_app',['ui.router']);
});
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询