文章目录:
- 1、javascript实现动态导入js与css等静态资源文件的方法
- 2、做前端静态资源缓存服务器有哪些成熟易搭建的方案
- 3、如何实现前端工程化和静态资源的管理
- 4、前端静态资源内部如何共享
- 5、如何用Tomcat部署前端静态文件
javascript实现动态导入js与css等静态资源文件的方法
本文实例讲述了javascript实现动态导入js与css等静态资源文件的方法。分享给大家供大家参考。具体实现方法如下:
/**
*
动态导入静态资源文件js/css
*/
var
$import
=
function(){
return
function(rId,
res,
callback){
if(res
'string'
==
typeof
res){
if(rId){
if($($('#'
+
rId),
$('head')).length0){
return;
}
}
//加载资源文件
var
sType
=
res.substring(res.lastIndexOf('.')
+
1);
//
支持js/css
if(sType
('js'
==
sType
||
'css'
==
sType)){
var
isScript
=
(sType
==
'js');
var
tag
=
isScript
?
'script'
:
'link';
var
head
=
document.getElementsByTagName('head')[0];
//
创建节点
var
linkScript
=
document.createElement(tag);
linkScript.type
=
isScript
?
'text/javascript'
:
'text/css';
linkScript.charset
=
'UTF-8';
if(!isScript){
linkScript.rel
=
'stylesheet';
}
isScript
?
linkScript.src
=
res
:
linkScript.href
=
res;
if(callback
'function'
==
typeof
callback){
if
(linkScript.addEventListener){
linkScript.addEventListener('load',
function(){
callback.call();
},
false);
}
else
if
(linkScript.attachEvent)
{
linkScript.attachEvent('onreadystatechange',
function(){
var
target
=
window.event.srcElement;
if
(target.readyState
==
'complete')
{
callback.call();
}
});
}
}
head.appendChild(linkScript);
}
}
};
}();
希望本文所述对大家的javascript程序设计有所帮助。
做前端静态资源缓存服务器有哪些成熟易搭建的方案
我现在是把阿里云的 CDN 直接解析到 OSS 。
每天的 PV , 1 万到 5 万。
然而才用了一个多月就跑了 300+G 流量。 0.36/GB 。泪。
阿里云的 CDN 实在是太贵了,用峰值带宽的话,根本就不能控制成本啊!万一有个用户 100M 水管,那一天岂不是要付 100 块钱?
所以还不如选一个好一点的 BGP 线路机器反代到 OSS 。
自己用 squid 搭建吗?
如果主站是 HTTPS 的, squid 能配置 SSL 吗?还是说要 nginx 配置 SSL 以后再去反代 squid ,然后 squid 反代 oss ?
有没有配置脚本?
还是装个 AMH/WDCP 之类面板,然后可以傻瓜化配置?
对主机磁盘 IO 、内存有什么要求?
如何实现前端工程化和静态资源的管理
提升开发体验
我们主要从以下三个方面来提升我们的开发体验。
规范化
当团队人员不断扩充时,我们需要制定统一的规范来对平时的开发工作做出一定约束和指导。统一的规范包括前端的代码规范,根据规范定义好一套代码检查的规则,在代码提交的时候进行检查,让开发人员知道自己的代码情况。
同时,根据以往的开发经验,我们制定了统一的项目框架,根据业务功能不同,将一个项目(app)拆分成不同的业务模块(module),而每一个模块都包含自身的页面(page)以及构成页面所需要的组件(widget),每一个项目涉及到app、module、page、widget这些已经约定好的概念,这样让项目结构更加清晰,而且让团队内不同业务的人员之间切换无障碍。
组件化
在项目中引入组件化的概念,这里的组件对应上文讲到的widget,每一个组件都会包含组件自身的模板、css、js、图片以及说明文件,我们使用组件来拼装页面,像搭积木一样来拼装我们的页面,同时一个组件内可以调用另一个组件。
在拿到设计稿后,我们首先需要确定哪些需要做成公共组件,那些是要做成独立组件,以及组件间如何进行通信。在页面中调用这些组件后,会自动加载组件的模板以及组件的静态资源,而当组件不再需要时,只要移除掉组件引用,那么相应的模板和静态资源也会不再加载。
组件化的好处主要有这么几点
管理方便,我们可以把一个独立功能相关的文件在工程目录中放在一起,这样代码管理起来会非常便利
组件复用,通过抽取公共组件,可以实现组件复用,从而减少工作量,创造价值
分而治之,这是组件化最重要的一点,将页面组件化,就是对页面功能的拆分,将一个大的工程拆成小的零件,我们只需要关注每一个零件的功能,极大地降低了页面的开发与维护的难度
自动化编译
在前端开发中,我们总是会去使用很多工具、手段来优化代码、提升开发效率,例如,我们会使用sass、less等CSS预处理工具来编写更好维护的样式代码,我们也会使用CSSLint、eslint等代码检查工具来检查代码的语法错误,使用文件合并压缩等手段来减少资源大小,除此之外我们还会去做雪碧图合并、多倍图处理、字体压缩处理、代码发布等等。
曾经有大神说过,超过90s的工作都应该自动化掉。而以上所有的这些工作,贯穿我们整个开发流程,但是不同工具的切换不但显得凌乱,而且影响开发效率。在自动化、工程编译的思想早已深入人心的当下,我们当然也要紧跟潮流,所以我们考虑通过自动化手段来提升我们的效率,让所有操作可以一键式开速执行完。
我们将通过定义好一系列的编译任务,按照一定顺序依次对我们的项目自动进行编译操作,最后产生出可上线的代码。
前端静态资源内部如何共享
前端静态资源内部:通过域名+相对URL的配置来实现共享。
1、在myeclipse里部署 这个直接在myeclipse里配置好tomcat的根路径。 在server里可以看到tomcat,选择部署你的工程就行了。
2、把自己的web工程放在tomcat的webapps下。
开发思路:
该课程主要以项目案例为主题,教材为参考,同时借鉴了一些企业网站。颠覆传统讲授风格,主要通过项目实例让学生以师傅带徒弟的形式一步一步学习项目开发流程。带着对一个项目雏形的不断完善,功能需求及其他功能的完善,进阶。
使学生掌握一个网站项目的设计与制作相关经验。经验从实践中来,因此学生实验课时约占到了总课时的三分之二。让学生在职业实践活动的基础上掌握知识,增强课程内容与职业能力要求的相关性,提高学生的就业能力。
如何用Tomcat部署前端静态文件
下载好Tomcat后,并且安装好,直接进入Tomcat的安装目录,找到你的webapps目录,在这里创建一个文件夹,然后把你的静态文件,比如html,图片等放进去。启动Tomcat(通过打开Tomcat的安装路径/bin目录下的 startup.bat), 之后在浏览器输入localhost:8080/文件夹名/静态资源名。
比如我的目录是 D:\Tomcat\apache-tomcat-6.0.45-windows-x64\apache-tomcat-6.0.45\webapps\test\hello.html,创建目录为test, 静态文件为 hello.html
于是访问 localhost:8080/test/hello.html
的页面,同时一个组件内可以调用另一个组件。在拿到设计稿后,我们首先需要确定哪些需要做成公共组件,那些是要做成独立组件,以及组件间如何进行通信。在页面中调用这些组件后,会自动加载组件的模板以及组件的静态资源,而当组件不再需要时,只要移除掉组件引用