2核1G3M服务器88一季度

腾讯云,阿里云百度云等 折扣价→点我←

基于 JS artTemplate 模板引擎 Template 加载的优化 discuz 教程

公共账号 管理员组

artTemplate (http://aui.github.io/artTemplate)一种全新的 javascript 模板引擎,它采用了预编译的方式让性能有了质的飞跃,并充分利用 javascript 引擎特性,使得其性能无论在前端还是后端都有极其出色的表现。但是在实际应用中我们发现,和Ajax配合后通常会产生很多的 Template,这些 Template 都堆积在页面源码中时间一长难免会越来越多,影响页面加载的字节数,让页面越来越大。
我们对此进行了优化,由于我们的业务主要是针对移动产品的,因此我们可以放心的使用 HTML5 的 localStorage 进行缓存操作,缓存部分代码如下:
<script id="header" type="text/html">
<div class="header"><h3><%= header.name %></h3></div>
</script>

<script id="hotList" type="text/html">
<ul>
    <% for(i = 0; i < list.length; i++){ %>
        <li tid="<%= list[i].tid %>"><%= list[i].subject %></li>
    <% } %>
</ul>
</script>

······
在我们使用的时候,直接引用文件即可,如下:
TC.load("tmpl/tpl_list.html");
首次访问此函数时,会调用 tmpl/tpl_list.html 文件并缓存到 localStorage 中,以后会直接从 localStorage 中获取 Template 的内容,直到 TC.VERSION 中的值变化,才会重新调用文件.从而减少了主页面请求的字节数.用过 artTemplate 的人会习惯直接把一些内容很短的模板直接写在 JS 里,类似下面
template.compile('header', '<div class="header"><h3><%= header.name %></h3></div>');
当然这样更省事。
此方案的是保证减少页面请求字节及页面请求数的目的下还能做到方便维护而提供的!

此功能在打通版微社区中实现!

来自建站学习研究资源开放平台【bbs.zhanzhangwo.com
站长窝论坛版权声明 1、本帖标题:基于 JS artTemplate 模板引擎 Template 加载的优化
2、论坛网址:站长窝论坛
3、站长窝论坛的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
4、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
5、站长窝论坛一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
6、本帖由公共账号在站长窝论坛《程序综合区》版块原创发布, 转载请注明出处!
评论
最新回复 (1)
返回
发新帖