0
內回調方法在我的應用程序中使用angularJS我。我誣陷了一切,它運作良好。但我唯一關心的是我想在加載這個內容之前調用一個ajax方法。因爲這個配置數據對我的應用程序來說非常重要。在這個迴應後,只有我的申請必須工作。如何寫AngularJs配置方法
如果有人有想法的手段請建議。提前致謝。
內回調方法在我的應用程序中使用angularJS我。我誣陷了一切,它運作良好。但我唯一關心的是我想在加載這個內容之前調用一個ajax方法。因爲這個配置數據對我的應用程序來說非常重要。在這個迴應後,只有我的申請必須工作。如何寫AngularJs配置方法
如果有人有想法的手段請建議。提前致謝。
可以在一對夫婦的方式做到這一點。您可以在引導應用程序之前執行您的請求,也可以在您的基本路線配置中使用resolve
。
而不是使用ng-app
指令自舉你的應用程序在你的HTML文件,您可以運行以下命令:
import AppComponent from './app.component';
function Bootstrap() {
bootstrap(document, ['app'], {
strictDi: true,
});
}
const app = angular
.module('app', [
uiRouter,
])
.component('app', AppComponent);
.name;
function getConfig() {
const initInjector = angular.injector(['ng']);
const $http = initInjector.get('$http');
return $http.get('/api/config')
.then(response => response.data);
}
getConfig()
.then((res) => {
angular
.module(app)
.config(res);
bootstrap();
});
我建議你使用角-ui路由器版本1.這將允許你打電話resolve
功能,這是加載任何組件之前執行的功能。
function appConfig($stateProvider) {
$stateProvider
.state('app', {
url: '/',
component: 'application',
resolve: {
config: (applicationService) => {
return applicationsService.getConfig();
},
},
})
}
當你的應用程序加載根/
,它會調用config
決心功能,將數據返回到控制器內this.config
屬性。
做這種負荷,當組件數據依賴關係,但不是最好的,如果你加載應用程序的配置,因爲並不是所有的用戶都通過訪問根頁開始是好的。 (不過,如果所有頁面都將application
狀態的兒童會工作。
參考此鏈接https://docs.angularjs.org/api/ng/service/$q – Vignesh