在我的angularjs应用程序中,我尝试像这样延迟加载一个控制器:
$scope.loadView4Ctrl = function () {
console.log('loadview4ctrl');
$ocLazyLoad.load({
name: "View4",
files: [
'view4/view4.js'
]
});
};
当我运行这个的时候,我的view4Ctrl没有加载吗?如何通过ocLazyLoad运行此控制器?
这是我试图加载的控制器:
'use strict';
console.log('loading file containing view4Ctrl');
app
.config(['$routeProvider', function ($routeProvider) {
$routeProvider.when('/view4', {
templateUrl: 'view4/view4.html',
controller: 'view4Ctrl'
});
}])
.controller('view4Ctrl', function () {
console.log('This is lazy loaded!!!');
$scope.hello='Good day , I am loaded now.';
});
这是code
发布于 2018-07-23 20:34:08
解析
在您的
view4/view4.js
中,将app.config
更改为angular.module('myApp').config
RCA
当
view4.js
被$ocLazyLoad
延迟加载时,app
变量的上下文已更改。
我确实从GitHub克隆了你的代码来测试上面的解决方案,并且它起作用了:)
希望它能帮上忙!
https://stackoverflow.com/questions/48159815
复制相似问题