JS模板引擎art-template

art-template 是一个简约、超快的模板引擎。
它采用作用域预声明的技术来优化模板渲染速度,从而获得接近 JavaScript 极限的运行性能,并且同时支持 NodeJS 和浏览器。

文档地址:https://aui.github.io/art-template/docs/index.html

gitHub地址:
https://github.com/aui/art-template

使用例子在github的example中有。

通常,在不借助模板引擎Ajax查询数据列表,需要自己手动拼写N多个tr和td。
比如:

$.get("${ctx}/student/list",function(r) {
    if (r.returncode == 0) {
      if (r.data) {
        var t = $('#list tbody').empty();
        for (var i=0;i< r.data.length;i++) {
          var item = r.data[i];
          var tr = "<tr><td>"+ (i+1)+"</td><td>" + item.name + "</td><td>" + item.age + "</td><td>" + item.scoreSum+ "</td><td>"+ item.scoreAvg + "<td></tr>";
          t.append($(tr));
        }
      }
    }
    else {
      layer.alert(r.errmsg);
    }
});

使用JS模板引起后:

<script type="text/javascript" src="${ctx}/asset/js/art-template/template-web.js"></script>
<script id="template" type="text/html">
    {{each data item index}}
    <tr>
        <td>{{index+1}}</td>
        <td>{{item['name']}}</td>
        <td>{{item['age']}}</td>
        <td>{{item['score_sum']}}</td>
        <td>{{item['score_avg']}}</td>
    </tr>
    {{/each}}
</script>
// 获取模板内容字符串
var templateHtml = $('#template').html();
// 编译模板
var render = template.compile(templateHtml);
$('#queryAll').click(function () {
    $.get("${ctx}/student/list", function (r) {
        if (r.returncode == 0) {
            if (r.data) {
                // 渲染模板
                var html = render(r);
                $('#list tbody').html(html);
            }
        }
        else {
            layer.alert(r.errmsg);
        }
    });
});
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值