前端笔记 Front-end Dev Engineer

前端渲染模板

2016-11-17

接到一个奇怪的要求,就是简单的一个动态页面,可以用php,jsp,asp 一类的轻松渲染的页面,但是后端懒,不愿意渲染,硬是开发了一个接口,然前端ajax请求之后js去渲染。。。

领导安排的任务,不解释————做!!!

没办法,后端是领导,他说了算,让咱做,咱就做。分析一下就是先载入一个空白页面,然后进行ajax请求,在拿到数据后,渲染出来。

模板,更多的模板

话说,拿到这要求,第一反应,php!!!对了,现在是前端,不能这么干,所以去找前端渲染模板——

  • baiduTemplate: http://baidufe.github.io/BaiduTemplate/
  • artTemplate: https://github.com/aui/artTemplate
  • juicer: http://juicer.name/或https://github.com/PaulGuo/Juicer/zipball/master#download
  • doT:doT source:https://github.com/olado/doT Docs:http://olado.github.com/doT/
  • tmpl:https://github.com/BorisMoore/jquery-tmpl
  • handlebars:http://handlebarsjs.com/或https://raw.github.com/wycats/handlebars.js/1.0.0-rc.4/dist/handlebars.js
  • easyTemplate:https://github.com/qitupstudios/easyTemplate
  • underscoretemplate: http://documentcloud.github.io/underscore/
  • mustache:https://github.com/janl/mustache.js
  • kissytemplate:https://github.com/ktmud/kissy

laytpl登场

其实上面的我也就是说说而已,懒的用,这里推荐的是laytpl,不图别的,就为了它短小精悍,才区区2k不到的大小

laytpl操作简介


<!-- 第一步:编写模版。你可以使用一个script标签存放模板,如: -->
<script id="demo" type="text/html">
<h1> {{ d.title }} </h1>
<ul>
{{# for(var i = 0, len = d.list.length; i < len; i++){ }}
  <li>
    <span>姓名{{ d.list[i].name }}</span>
    <span>城市{{  d.list[i].city }}</span>
  </li>
{{# } }}
</ul>
</script>

<!-- 第二步:建立视图。用于呈现渲染结果。 -->
<div id="view"></div>

//第三步:渲染模版
var data = {
  title: '前端攻城师',
  list: [{name: '贤心', city: '杭州'}, {name: '谢亮', city: '北京'}, {name: '浅浅', city: '杭州'}, {name: 'Dem', city: '北京'}]
};
var gettpl = document.getElementById('demo').innerHTML;
laytpl(gettpl).render(data, function(html){
  document.getElementById('view').innerHTML = html;
});

后记

轻松完成任务!!!

日志

2016-11-17 创建


评论

Content