不需要延遲加載。
用於添加動態狀態。我只需要在配置階段將狀態提供者引用添加到我的應用程序。
angular.module('app.module').config(function ($stateProvider, $urlRouterProvider) {
angular.module('app.module').$stateProvider = $stateProvider;
//send to login first
$urlRouterProvider.otherwise("/user/login");
});
然後在用戶登錄成功後登錄服務,增加一些新聞狀態到狀態提供商。
loginSuccess(){
$http.get('api/states/').then(function(states){
bindStates(states);
});
}
function bindStates(states) {
states.forEach(function bind(stateData) {
// add new states
angular.module('app.module').$stateProvider.state({
name: stateData.name,
url: stateData.url,
template: stateData.template,
params: {
'pageId': null
},
abstract: stateData.abstract
});
});
// go to default state
$state.go('main');
}
你需要進一步調查ocLazyLoad,因爲你可以做你想做的事情。例如,在您的運行塊中:$ ocLazyLoad.load({type:'js',path:'js/libs/fastclick.min.js'})。then(function(){FastClick.attach(document.body); }) – user3791775