// #1 变量{{~ var x = 100}}{{x}}//输出: 100// #2 字符串{{"hello world"}}//输出:hello world// #3 安全输出,对 html 进行 escape{{# "<div> hello world </div>"}}//输出:<div> hello world </div>// #4 强制转换 html 输出{{! "<div> hello world </div>"}}//输出:<div> hello world </div>
变量定义
#1{{~ var a =100}}#2{{~ var a =100,b = 200,c=300}}#3#{{~ let a =100}}#4#{{~ let a =100,b=200,c=300}}#4#{{~ const a =100}}#5#{{~ const a =100,b=200,c=300}}
if-else
{{~ if (x == 100) }}{{~ elseif(x == 200) }}{{~ else if(x == 300) }}{{~ else }}{{~ end }}
同时支持 'elseif' or 'else if'
for 循环
// #1{{~ for (item of array) }}{{~end}}// #2{{~ for (item in array) }}{{~end}}// #3{{~ for (let item of array) }}{{~end}}// #4{{~ for (const item in array) }}{{~end}}// #5{{~ for (key of Object.keys(item) )}}{{~end}}// #6{{~ for (var x = i;x < 100;x++) }}{{~ end }}// #7{{~ for (item of someMethodInvoke().other()) }}{{~end}}// #8{{~ for (var x = i;x < someMethodInvoke().other();x++) }}{{~ end }}
安全访问
#1{{a?.b?.c}}#2{{a.bbbb?().ccc?.ddd}}
初始化配置
varoptions={//共享模板方法和数据share:{attr:'text...',func1:function(v){returnv+" kiss~~"},},// 是否是共享数据优先// 默认 false,即: render 方法传入的 data 数据优先shareDataFirst:false,//default is false//是否开启安全访问,这个功能不支持 IE 浏览器//IE 下需要设置为 false,同时配置 false 后会得到更高的运行性能safelyAccess:true,//自定义 html 安全输出方法//当使用 {{# ... }} 的时候使用该方法转换$escape:function(html){returnhtml},//自定义 unescape 方法//当使用 {{! ... }} 的时候使用该方法转换$unescape:function(value){returnvalue}}varfasty=newFasty(options);fast.render(template,data)
Fasty v1.0.2 发布,一个极快的 JavaScript 模板引擎
Fasty 一个极快的 JavaScript 模板引擎
Fasty 是一个简约、超快的 JavaScript 模板引擎, 它使用了非常独特的缓存技术,从而获得接近 JavaScript 极限的运行性能,并且同时支持 NodeJS 和浏览器。
Fasty 特点
{{ }}和 逻辑指令{{~ }}{{ $("#id").text() }}使用方法
示例1
示例2
Fasty 语法
输出
变量定义
if-else
for 循环
安全访问
初始化配置
作者
License
Fasty is licensed under the MIT License.
开源地址
https://gitee.com/fuhai/fasty