世界上最好用的纯前端模板【没有之一】,AceTemplate高调亮相。

AceTemplate是一款易学、易用、高性能的前端模板系统,仅包含html和js两种语法。它能自动识别语法,提供format、register、unregister等方法,并具有防止XSS攻击的特性。通过实例展示了其在循环、jQuery混用、嵌套模板和递归模板等场景的应用。
摘要由CSDN通过智能技术生成

http://code.google.com/p/ace-engine/wiki/AceTemplate

概述

  随着Ajax技术的普及,纯前端模板的使用频率越来越高。我们需要一个易学、易用、高性能的模板系统来处理日益繁杂的需求变化。

  前端模板处理,有90%以上的情况都是在处理html相关字符串,针对这一特性我们设计了一种只包含html和js两种语法的模板系统AceTemplate

  对于前端开发者,html和js是无需额外的学习成本。

特点

  1. 易学(只需html和js基础),易用(最少的输入)
  2. 智能(自动识别语法、标识符)
  3. 扩展便捷

语法

以行为单位,分为两种html行和js行,自由穿插

判断是否为html行的规则
  1. 特殊字符开头;
  2. 示例:
    汉字、#{value}、<div>
  3. Html标记结尾;
  4. 示例:
    >、src="1.gif" />
  5. 没有“双引号、单引号、分号、逗号,大小括号”,不是else等单行语句;
  6. 示例:
    hello world
  7. Html属性;
  8. 示例:
    a="12"a='ab' b="cd"
  9. 样式表达式。
  10. 示例:
    div.focus{
         color: #fff;}、#btnAdd span{}

html行负责输出内容

两种表达式输出;#{表达式}!#{表达式}

#{表达式} 采用html字符串编码输出,默认规避xss漏洞

!#{表达式} 采用原文字符串编码输出

js行负责逻辑处理

方法

format

格式化输出

/**
 * 格式化输出
 * @param {String|Element} id 模板ID或是模板本身(非标识符将识别为模板本身)
 * @param {Object} data 格式化的数据
 * @param {Object} helper 附加数据(默认为模板对象)
 */
AceTemplate.format = function(id, data, helper)

register

注册模板

/**
 * 注册模板,如果没有参数则是注册所有script标签模板
 * @param {String} id 模板ID
 * @param {Element|String} target 模板对象或者是模板字符串,如果没有则默认获取id对应的DOM对象
 */
AceTemplate.register = function(id, target)

unregister

注销模板

/**
 * 注销模板
 * @param {String} id 模板ID
 */
AceTemplate.unregister = function(id)

例子

输入输出用例

http://ace-engine.googlecode.com/svn/trunk/examples/ace-template/case.html

调试:

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值