对于“前端按需加载资源”的经验总结

来源:互联网 发布:怎么看卖家淘宝网址 编辑:程序博客网 时间:2024/05/21 08:56

前端按需加载资源,说的接地气一些,主要是对图片、js的加载处理,

也就是让页面以最快的速度加载完成,其他的可以异步或按需加载,主要还是提高用户体验。


好处是:

·        减少向服务器发出的并发请求数量

·        减少浏览器的内存使用率(更少的图片,更少的内存)

·        减少服务器端的负载


解决方法:

对于图片,合成雪碧图,基本就可以满足。

所用JS,合并压缩一下。其他使用的库,可以使用时异步加载即可,做好一个loading指令。


异步加载

$scope.fn_loadScript = function(url){
var oKmap = document.getElementById('k-map') || '';
if( oKmap ){
//加个延迟模拟异步
$timeout(function(){
$scope.fn_callback();
},500);
return;
}

var script = document.createElement("script");
script.type = "text/javascript";
script.id = "k-map";
script.src = url;
if (script.readyState){ //IE
script.onreadystatechange = function(){
if (script.readyState == "loaded" || script.readyState == "complete"){
script.onreadystatechange = null;
//alert('加载完成');
$scope.fn_callback();
}
};
} else { //Others: Firefox, Safari, Chrome, and Opera
script.onload = function(){
//alert('加载完成');
$scope.fn_callback();
};
}
document.body.appendChild(script);
};
$scope.fn_loadScript('../../../lib/k-map.min.js');
然后...就暂时没有然后了,因为这样就基本满足需求了。


这只是,我个人经常用的。渴望大牛,提出意见。一起加强学习