2015-12-22 35 views
0

,而不是在最初階段運行的配置,我想基於一些信息獲取從服務器這樣在稍後階段配置的東西:動態調用module.config()被阻塞

$http.get(url) 
.success(function(response){ 
    angular.module('MyApp').config(['$myServiceProvider', function($myServiceProvider){ 
     $myServiceProvider.enableSomething(true); // delayed !!! 
    }]); 
}); 

然而,運行config()函數的主體會被阻塞,直到我加載了一些延遲加載的部分。也許$ compile()會觸發它。

我不明白爲什麼它是這樣以及如何使config()正文立即被調用。

謝謝。

+1

Angular Prefixes $和$$:爲了防止意外的名稱與您的代碼衝突,Angular使用$前綴公用對象的名稱和使用$$的私有對象的名稱。請不要在代碼中使用$或$$前綴。 – pat

+0

@pat感謝提醒。 – gm2008

回答

1

有沒有可能在你的場景中使用$http在撥打module.run並在$http的成功處理程序中配置您的服務?

如果絕對需要module.config調用之前發生,請從你的HTML ng-app和不通過調用angular.bootstrapthe documentation列出你已經獲取的文件後,自舉自己。

據我所知,沒有辦法阻止的配置階段。