项目作者: NeverGiveUpLZ

项目描述 :
JavaScript模板引擎
高级语言: HTML
项目地址: git://github.com/NeverGiveUpLZ/MyTpl.git
创建时间: 2018-04-27T12:22:15Z
项目社区:https://github.com/NeverGiveUpLZ/MyTpl

开源协议:

下载


MyTpl (曾用名:useTpl)

速度测试图片

    1. 1我开发这个的时候为了小巧,没有可以注重速度方面
    2. 2模板呢中两个空格以上将替换成一个空格
    3. 3<!-- -->注释将被直接删除
  • 使用

    1. 设置边界符
    2. var uefn=MyTpl({tagBegin:'{>',tagEnd:'<}'});
    3. 设置模板
    4. uefn=uefn(模板);
    5. 进行渲染
    6. document.write(MyTpl(数据,true));
    7. 直接渲染输出
    8. document.write(MyTpl(模板,数据));
  • 注 下面的测试模板使用了自定义边界符,默认的边界符如下

    1. {
    2. tagBegin:'{{',
    3. tagEnd:'}}',
    4. tagOut:'='
    5. }
  • 模板临时定义变量
    1. {>var pi=3.1415926;<}
    2. {>
    3. var a=1;
    4. var b='b';>
    5. var c="c";
    6. var a=10+5+a;
    7. <}
  • 输出

    1. {>=a<}
    2. 或者输出参与计算
    3. {>=a+a*3<}
  • 模板中直接运行函数

    1. {>alert('123');<}
    2. 假如系统定义增强函数 each 函数如下
    3. Array.prototype.each=function(c){ /*1.1*/
    4. for(var i=0,val;val=this[i++];){
    5. (c||empfunc)(val,i);
    6. }
    7. return this;
    8. };
    9. 使用
    10. {> [{id:1},{id:2}].each(function(val,key){ <}
    11. {>=val.id<}
    12. {> }); <}
  • 判断 if 注意分号
    1. {>if( a>3 ):<}
    2. <span>a大于3</span
    3. {>elseif(a>4):<}
    4. <span>a大于4</span
    5. {>else:<}
    6. <span>a不大于3也不大于4</span
    7. {>/if<}
  • 循环
    1. {>var list=[{id:1},{id:2}]; <}
    2. {>for(var k=0;k<list.length;k++): <}
    3. {>=list[k].id<}
    4. {>/for<}