我正在使用角度js和ui路由器。
我正在创建一个向导,我使用命名视图设置我的ui-router,如下所示:
.state('app.common.import', {
url: '/import/:type',
views: {
'': {
controller: 'ImportCommonCtrl',
templateUrl: 'views/tmpl/import/common.html'
},
'method@app.common.import': {
controller: 'ImportCommonCtrl',
templateUrl: 'views/tmpl/import/common/method.html'
},
'result@app.common.import': {
templateUrl: 'views/tmpl/import/common/result.html',
controller: 'ImportResultCtrl',
},
'upload@app.common.import': {
controller: 'ImportUploadCtrl',
templateUrl: 'views/tmpl/import/common/upload.html',
resolve: {
plugins: ['$ocLazyLoad', function ($ocLazyLoad) {
return $ocLazyLoad.load([
'scripts/vendor/filestyle/bootstrap-filestyle.min.js'
]);
}]
}
}
}
})
我的问题是,当我访问url / import /:type ...
时,所有控制器都被加载了我想在显示视图时加载控制器。
我试过$ rootScope 。在( '$ viewContentLoaded' $, function(event,viewConfig){
但它不起作用。有没有办法做到这一点?
谢谢,