常用的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数组函数unshift、shift、pop、push使用实例
Aug 27 Javascript
javascript实现保留两位小数的多种方法
Dec 18 Javascript
js实现仿微博滚动显示信息的效果
Dec 21 Javascript
基于jQuery实现仿QQ空间送礼物功能代码
May 24 Javascript
微信小程序 扎金花简单实例
Feb 21 Javascript
详解Vue.use自定义自己的全局组件
Jun 14 Javascript
ionic3+Angular4实现接口请求及本地json文件读取示例
Oct 11 Javascript
jquery实现回车键触发事件(实例讲解)
Nov 21 jQuery
JS实现求字符串中出现最多次数的字符和次数示例
Jul 05 Javascript
JavaScript 面向对象基础简单示例
Oct 02 Javascript
vue.js中使用微信扫一扫解决invalid signature问题(完美解决)
Apr 11 Javascript
Ajax异步刷新功能及简单案例
Nov 20 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
PHP 引用文件技巧
2010/03/02 PHP
PHP下对字符串的递增运算代码
2010/08/21 PHP
php数组中包含中文的排序方法
2014/06/03 PHP
php实现微信公众平台账号自定义菜单类
2015/10/11 PHP
网站被恶意镜像怎么办 php一段代码轻松搞定(全面版)
2018/10/23 PHP
php的对象传值与引用传值代码实例讲解
2021/02/26 PHP
在Z-Blog中运行代码[html][/html](纯JS版)
2007/03/25 Javascript
jQuery $命名冲突解决方案汇总
2014/11/13 Javascript
简单实现Bootstrap标签页
2020/08/09 Javascript
Javascript 详解封装from表单数据为json串进行ajax提交
2017/03/29 Javascript
微信小程序引用公共js里的方法的实例详解
2017/08/17 Javascript
js中bool值的转换及“&amp;&amp;”、“||”、 “!!”详解
2017/12/21 Javascript
分析javascript原型及原型链
2018/03/18 Javascript
Node.js文件编码格式的转换的方法
2018/04/27 Javascript
vue webpack重写cookie路径的方法
2019/07/10 Javascript
微信小程序利用button控制条件标签的变量问题
2020/03/15 Javascript
解决Vue的文本编辑器 vue-quill-editor 小图标样式排布错乱问题
2020/08/03 Javascript
python基础教程之字典操作详解
2014/03/25 Python
使用Django和Python创建Json response的方法
2018/03/26 Python
python 读取鼠标点击坐标的实例
2018/12/29 Python
使用Python实现企业微信的自动打卡功能
2019/04/30 Python
python lxml中etree的简单应用
2019/05/10 Python
Python 3.8中实现functools.cached_property功能
2019/05/29 Python
利用python、tensorflow、opencv、pyqt5实现人脸实时签到系统
2019/09/25 Python
pytorch 彩色图像转灰度图像实例
2020/01/13 Python
pytorch 常用线性函数详解
2020/01/15 Python
Python 3.8 新功能来一波(大部分人都不知道)
2020/03/11 Python
CSS3之transition实现下划线的示例代码
2018/05/30 HTML / CSS
美国领先的户外服装与装备用品店:Moosejaw
2016/08/25 全球购物
师范生教师实习自我鉴定
2013/09/27 职场文书
后勤副校长自我鉴定
2013/10/13 职场文书
网络维护中文求职信
2014/01/03 职场文书
优秀教师演讲稿
2014/05/06 职场文书
2014幼儿园保育员工作总结
2014/11/10 职场文书
订货会主持词
2015/07/01 职场文书
2015年高三毕业班班主任工作总结
2015/10/22 职场文书