laytpl 精致巧妙的JavaScript模板引擎


Posted in Javascript onAugust 29, 2014

laytpl是一款颠覆性的JavaScript模板引擎,它用巧妙的实现方式,将自身的体积变得小巧玲珑,不仅性能接近极致,并且还具备传统前端引擎的几乎所有功能。所有的变身魔法都由不到1KB的代码创造,这仿佛是一场革命,又或者不是,但毋庸置疑的是,laytpl的确在用最轻量的方式呈现给世人。如果你从未接触这方面的应用,没关系,下面的讲述将会让你迫不及待地选择laytpl,从此更好地把握页面的数据渲染,走上人生巅峰!

laytpl 精致巧妙的JavaScript模板引擎

laytpl优势

•性能卓绝,执行速度比号称性能王的artTemplate、doT还要快将近1倍,比baiduTemplate、kissyTemplate等快20-40倍,数据规模和渲染频率越大越明显
•体积简直小到极致,不足1kb,未来它还会变得更小。
•具备转义等安全机制,比较科学的报错功能
•模版中可任意书写Native JavaScript,充分确保模版的灵活度
•支持应用在Node.js平台
•支持所有古代或现代的主流浏览器

laytpl 精致巧妙的JavaScript模板引擎

使用方式

//第一步:编写模版。你可以使用一个script标签存放模板,如:

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

<h1>{{ d.title }}</h1>

<ul>

{{# for(var i = 0, len = d.list.length; i < len; i++){ }}

    <li>

        <span>姓名:{{ d.list[i].name }}</span>

        <span>城市:{{ d.list[i].city }}</span>

    </li>

{{# } }}

</ul>

</script>

//第二步:建立视图。用于呈现渲染结果。

<div id="view"></div>

//第三步:渲染模版

var data = {

    title: '前端攻城师',

    list: [{name: '贤心', city: '杭州'}, {name: '谢亮', city: '北京'}, {name: '浅浅', city: '杭州'}, {name: 'Dem', city: '北京'}]

};

var gettpl = document.getElementById('demo').innerHTML;

laytpl(gettpl).render(data, function(html){

    document.getElementById('view').innerHTML = html;

});

文档说明

一、模版语法

输出一个普通字段,不转义html:   {{ d.field }}
输出一个普通字段,并转义html:   {{= d.field }}
JavaScript脚本: {{# JavaScript statement }}

二、内置方法

1):laytpl(template);   //核心函数,返回一个对象
   
    var tpl = laytpl(template);
    tpl.render(data, callback);   //渲染方法,返回渲染结果,支持异步和同步两种模式
        a):异步
        tpl.render(data, function(result){
            console.log(result);
        });
       
        b):同步
        var result = tpl.render(data);
        console.log(result);

   
2):laytpl.config(options); //初始化配置
    options是一个对象
    {open: '开始标签', close: '闭合标签'}
   
3):laytpl.v    //获取版本号

注意事项

1.直接引入laytpl.js即可,另外还可直接使用Seajs等模块化加载。
2.无论商业或个人平台都可以任意使用laytpl
3.任何场合下都务必保留来源,请勿剔除laytpl.js头部注释。

官方网站:http://sentsin.com/layui/laytpl/

下载:https://3water.com/codes/207072.html

Javascript 相关文章推荐
JavaScript事件列表解说
Dec 22 Javascript
jquery 弹出层注册页面等(asp.net后台)
Jun 17 Javascript
基于jquery的web页面日期格式化插件
Nov 15 Javascript
页面右下角弹出提示框示例代码js版
Aug 02 Javascript
JavaScript字符串对象fromCharCode方法入门实例(用于把Unicode值转换为字符串)
Oct 17 Javascript
详细解读AngularJS中的表单验证编程
Jun 19 Javascript
ionic由于使用了header和subheader导致被遮挡的问题的两种解决方法
Sep 22 Javascript
socket.io学习教程之基本应用(二)
Apr 29 Javascript
JavaScript编程设计模式之构造器模式实例分析
Oct 25 Javascript
快速搭建React的环境步骤详解
Nov 06 Javascript
Angularjs实现数组随机排序的方法
Oct 02 Javascript
JavaScript面试技巧之数组的一些不low操作
Mar 22 Javascript
jQuery动画特效实例教程
Aug 29 #Javascript
jQuery实用函数用法总结
Aug 29 #Javascript
jQuery实现异步获取json数据的2种方式
Aug 29 #Javascript
原生javascript实现的分页插件pagenav
Aug 28 #Javascript
JavaScript判断变量是对象还是数组的方法
Aug 28 #Javascript
分享一个自己动手写的jQuery分页插件
Aug 28 #Javascript
jQuery标签替换函数replaceWith()的使用例子
Aug 28 #Javascript
You might like
应用开发中涉及到的css和php笔记分享
2011/08/02 PHP
PHP 第一节 php简介
2012/04/28 PHP
PHP中对缓冲区的控制实现代码
2013/09/29 PHP
Laravel 对某一列进行筛选然后求和sum()的例子
2019/10/10 PHP
js截取字符串的两种方法及区别详解
2013/11/05 Javascript
jquery制作弹窗提示窗口代码分享
2014/03/02 Javascript
jQuery响应鼠标事件并隐藏与显示input默认值
2014/08/24 Javascript
用JavaScript实现用一个DIV来包装文本元素节点
2014/09/09 Javascript
Js与Jq 获取页面元素值的方法和差异对比
2015/04/30 Javascript
js实现图片放大和拖拽特效代码分享
2015/09/05 Javascript
IE中document.createElement的iframe无法设置属性name的解决方法
2015/09/14 Javascript
常用JS图片滚动(无缝、平滑、上下左右滚动)代码大全(推荐)
2016/12/20 Javascript
半个小时学json(json传递示例)
2016/12/25 Javascript
react开发中如何使用require.ensure加载es6风格的组件
2017/05/09 Javascript
原生js封装的ajax方法示例
2018/08/02 Javascript
使用VUE实现在table中文字信息超过5个隐藏鼠标移到时弹窗显示全部
2019/09/16 Javascript
js实现图片实时时钟
2020/01/15 Javascript
vue 使用 vue-pdf 实现pdf在线预览的示例代码
2020/04/26 Javascript
解决vuecli3中img src 的引入问题
2020/08/04 Javascript
vue print.js打印支持Echarts图表操作
2020/11/13 Javascript
[42:11]TNC vs Pain 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
Python2.5/2.6实用教程 入门基础篇
2009/11/29 Python
Python实现霍夫圆和椭圆变换代码详解
2018/01/12 Python
wxPython实现窗口用图片做背景
2018/04/25 Python
对Python使用mfcc的两种方式详解
2019/01/09 Python
关于Python3 lambda函数的深入浅出
2019/11/27 Python
Selenium 安装和简单使用的实现
2020/12/04 Python
科颜氏加拿大官方网站: Kiehl’s加拿大
2016/08/16 全球购物
小学教师听课制度
2014/02/01 职场文书
祖国在我心中演讲稿400字
2014/05/04 职场文书
小区推广策划方案
2014/06/06 职场文书
小区门卫岗位职责范本
2014/08/24 职场文书
2015迎新晚会开场白
2015/07/17 职场文书
工作建议书范文
2019/07/08 职场文书
jquery插件实现悬浮的菜单
2021/04/24 jQuery
《仙剑客栈2》第一弹正式宣传片公开 年内发售
2022/04/07 其他游戏