常用的JavaScript模板引擎介绍


Posted in Javascript onFebruary 28, 2015

最近工作内容慢慢接近我的理想化(web前端),所以关注比较多的是前端性能!后台同事介绍使用ajax模板引擎,提高渲染速度!

下面介绍几款 JavaScript 模板引擎

1. Mustache

基于javascript 实现的模板引擎,类似于 Microsoft's jQuery template plugin,但更简单易用!

2. doT.js

doT.js 包含为浏览器和Node.js 准备的 JavaScript 模板引擎。

3. jSmart

jSmart 是著名的 PHP 模板引擎 Smarty 的 JavaScript 移植版本。

4. dom.js

dom.js 是一款可用在客户端和服务器端的 JavaScript 模板引擎

5. jade

Jade是受Haml的影响以JavaScript实现用于node的高性能模板引擎。

6. Hogan.js

来自 Twitter 的 JavaScript 模板引擎。

7. Handlebars

Handlebars 是一个 JavaScript 的页面模板库

8. artTemplate

artTemplate 是新一代 javascript 模板引擎,它在 v8 中的渲染效率可接近 javascript 性能极限,在 chrome 下渲染效率测试中分别是知名引擎 Mustache 与 micro tmpl 的 25 、 32 倍。引擎支持调试。若渲染中遇到错误,调试器可精确定位到产生异常的模板语句,解决前端模板难以调试的问题。

独有模板编译工具,它能把前端模板编译成不依赖模板引擎运行的JS文件,让前端模板可以突破浏览器的限制,实现像后端模板一样按文件与目录的方式组织、按需加载、include嵌套等。这一切都在 2kb(gzip) 中实现!

也许你会觉得这个插件名似曾相识,没错!这个也是artDialog的作者糖饼

博客地址:http://www.planeart.cn/

引用引擎

<script src="js/template.js"></script>

编写模板

<script id="test" type="text/html">

//使用一个type="text/html"的script标签存放模板:

<h1><%=title%></h1>

<ul>

  <%

    for(i=0;i<list.length;i++){%>

      <li>itemL <%=i+1%>:<%=list[i]%></li>

    <%}%>

</ul>

//模板逻辑语法开始与结束的界定符号为<% 与%>,若<%后面紧跟=号则输出变量内容

</script>

渲染模板

var data = {

    title: '标签',

    list: ['文艺', '博客', '摄影', '电影', '民谣', '旅行', '吉他']

};

var html=template.render("test",data);

document.getElementById('content').innerHTML = html;
Javascript 相关文章推荐
JavaScript的面向对象方法以及差别
Mar 31 Javascript
使用jquery插件实现图片延迟加载技术详细说明
Mar 12 Javascript
EasyUI中的tree用法介绍
Nov 01 Javascript
拉动滚动条加载数据的jquery代码
May 03 Javascript
JS弹出层单纯的绝对定位居中示例代码
Feb 18 Javascript
Javascript中设置默认参数值示例
Sep 11 Javascript
node.js中的fs.readdir方法使用说明
Dec 17 Javascript
JS实现文字链接感应鼠标淡入淡出改变颜色的方法
Feb 26 Javascript
聊聊JavaScript如何实现继承及特点
Apr 07 Javascript
jQuery加密密码到cookie的实现代码
Apr 18 jQuery
vue resource post请求时遇到的坑
Oct 19 Javascript
浅谈webpack4.x 入门(一篇足矣)
Sep 05 Javascript
JavaScript操作Cookie详解
Feb 28 #Javascript
js实现可得到不同颜色值的颜色选择器实例
Feb 28 #Javascript
JS+CSS实现实用的单击输入框弹出选择框的方法
Feb 28 #Javascript
JS实现很酷的EMAIL地址添加功能实例
Feb 28 #Javascript
浅谈JavaScript数据类型及转换
Feb 28 #Javascript
javaScript基础语法介绍
Feb 28 #Javascript
jQuery实现的输入框选择时间插件用法实例
Feb 28 #Javascript
You might like
在PHP3中实现SESSION的功能(二)
2006/10/09 PHP
PHP URL地址获取函数代码(端口等) 推荐
2010/05/15 PHP
php5 apache 2.2 webservice 创建与配置(java)
2011/01/27 PHP
php中通过正则表达式下载内容中的远程图片的函数代码
2012/01/10 PHP
php类自动装载、链式操作、魔术方法实现代码
2017/07/23 PHP
极酷的javascirpt,让你随意编辑任何网页
2007/02/25 Javascript
jQuery 版元素拖拽原型代码
2011/04/25 Javascript
Jquery chosen动态设置值实例介绍
2013/08/08 Javascript
javascript中expression的用法整理
2014/05/13 Javascript
node.js中的fs.fstat方法使用说明
2014/12/15 Javascript
javascript实现微信分享
2014/12/23 Javascript
JavaScript设计模式经典之命令模式
2016/02/24 Javascript
浅谈js中的变量名和函数名重名
2017/02/13 Javascript
微信小程序 图片加载(本地,网路)实例详解
2017/03/10 Javascript
Easyui在treegrid添加控件的实现方法
2017/06/23 Javascript
vue.js全局API之nextTick全面解析
2017/07/07 Javascript
基于Bootstrap实现城市三级联动
2017/11/23 Javascript
通过seajs实现JavaScript的模块开发及按模块加载
2019/06/06 Javascript
jQuery 图片查看器插件 Viewer.js用法简单示例
2020/04/04 jQuery
Python实现读取目录所有文件的文件名并保存到txt文件代码
2014/11/22 Python
python实现逻辑回归的方法示例
2017/05/02 Python
python3利用Dlib19.7实现人脸68个特征点标定
2018/02/26 Python
python实现微信自动回复及批量添加好友功能
2019/07/03 Python
Python 中由 yield 实现异步操作
2020/05/04 Python
让IE可以变相支持CSS3选择器
2010/01/21 HTML / CSS
CSS3 实现图形下落动画效果
2020/11/13 HTML / CSS
Canvas引入跨域的图片导致toDataURL()报错的问题的解决
2018/09/19 HTML / CSS
L’AGENCE官网:加州女装品牌
2018/06/03 全球购物
iPad和Surface Pro蓝牙键盘:Brydge
2018/11/10 全球购物
RUIFIER官网:英国奢侈高级珠宝品牌
2020/06/12 全球购物
法学研究生自我鉴定范文
2013/12/04 职场文书
中学生运动会口号
2014/06/07 职场文书
关于旅游的活动方案
2014/08/15 职场文书
话题作文之生命的旋律
2019/12/17 职场文书
Spring Boot 启动、停止、重启、状态脚本
2021/06/26 Java/Android
vue @ ~ 相对路径 路径别名设置方式
2022/06/05 Vue.js