Javascript 如何从angularjs中的控制器动态加载css和js文件
我已经在这方面创建了angularjs项目。我有不同的页面,为了节省加载时间,我添加了所有登录页面不需要的css和js文件,这些文件都是使用延迟加载从第2页加载的。现在我的问题是如果我从第一页转到第三页。我的css ad js文件未加载。请为此提供一些变通解决方案 app.jsJavascript 如何从angularjs中的控制器动态加载css和js文件,javascript,angularjs,lazy-loading,Javascript,Angularjs,Lazy Loading,我已经在这方面创建了angularjs项目。我有不同的页面,为了节省加载时间,我添加了所有登录页面不需要的css和js文件,这些文件都是使用延迟加载从第2页加载的。现在我的问题是如果我从第一页转到第三页。我的css ad js文件未加载。请为此提供一些变通解决方案 app.js $stateProvider .state('login', { url : '/', templateUrl : &quo
$stateProvider
.state('login', {
url : '/',
templateUrl : "views/login.html",
controller : "loginController"
})
.state('page1',
{
url : '/page1',
templateUrl : "/page1.html",
controller : "page1controller",
resolve : {
lazyloadctrl : function($ocLazyLoad) {
return $ocLazyLoad.load([{
name : 'page1',
files : ['./js/file1.js',
'./js/lib/file1.js',
'./js/lib/file2.js',
'./js/lib/file3.js',
'./js/lib/file4.js',
'./css/part1.css',
'./css/part2.css',
]
}]);
}
}
})
.state('page2',
{
url : '/page2',
templateUrl : "/page2.html",
controller : "page2controller",
resolve : {
lazyloadctrl : function($ocLazyLoad) {
return $ocLazyLoad.load([{
name : 'page2',
files : ['./js/file2.js']
}]);
}
}
})
在我的控制器中:
if(result=='page1') {
$state.go("page1");
}
else if(result=='page2') {
$state.go("page3");
}
else if(result=='page3') {
$state.go("page3");
} }
请提供你的恼人的脚本,然后我会完全修复它们。根据您的描述,我向您推荐此代码。@Sophie请为我提供解决方案,我有一堆代码。你能指定我需要提供哪些代码吗?我想要你的应用程序file@Sophie我已经更新了我的app.js,请检查it@Sophie你做对了吗?我这边有什么要求吗