我不想在初始阶段运行配置,而是根据从服务器获取的一些信息在稍后阶段配置一些内容,如下所示:
$http.get(url)
.success( function(response){
angular.module('MyApp').config(['$myServiceProvider', function( $myServiceProvider){
$myServiceProvider.enableSomething(true); // delayed !!!
}]);
});
然而,在我加载一些延迟加载的部分之前,config()函数体的运行被阻止。也许$ compile()会触发它。
我不明白为什么会这样,以及如何立即调用config()体。
感谢。
答案 0 :(得分:1)
angular-deferred-bootstrap模块完全执行:https://github.com/philippd/angular-deferred-bootstrap
请参阅:https://github.com/philippd/angular-deferred-bootstrap#attach-constants-to-specific-modules
此外,此问题还提供其他选项:AngularJS : Initialize service with asynchronous data
答案 1 :(得分:1)
您的方案中是否可以在_JAVA_AWT_WM_NONREPARENTING=1
调用中使用$http
并在module.run
的成功处理程序中配置您的服务?
如果绝对需要在$http
来电之前完成,请从您的HTML中移除module.config
,然后按照the documentation中所述ng-app
后自行进行自举。获取文件。
据我所知,阻止配置阶段无法实现。