我想加載一個不同的網頁(如:google.com)基於AngularJS應用程序中的REST API的響應之前任何HTML加載默認視圖的AngularJS應用程序。我想要加載HTML加載之前不同的網頁 - AngularJS
我已經嘗試在工廠中進行REST服務調用,並在應用程序的.run函數中使用響應,但在頁面重定向之前,我能夠看到Angular應用程序的HTML視圖。
var app = angular.module('myApp',[]);
app.run(function(myService,$window) {
myService.someFunc().then(function(data){
$window.location.href = 'http://www.google.com';
});
});
app.factory('myService',function($http,$window,$q){
var self = this;
this.someFunc = function someFunc(){
var deffered = $q.defer();
$http.get('someAPI').success(function(data){
deffered.resolve(data)
}).error(function(error){
deffered.reject(error)
});
return deffered.promise;
}
return self;
}):
你也許可以使用ngCloak來隱藏HTML,直到所有的東西都被加載並被處理了? – chris22smith
要麼在路由器中使用解析器,要麼在回調中使用角度引導應用程序和手動引導應用程序進行請求。路由器解析延遲加載控制器和模板。儘管最好是展示一些東西 – charlietfl
@ chris22smith:如果我是正確的,ng-cloak用於防止Angular html模板被瀏覽器以原始(未編譯)形式簡單顯示,而您的應用程序是加載。但是我不希望任何東西加載之前,我有來自REST API的響應。感謝您的建議 –