artemplate使用
最近写了一个菜谱展示的网页,其中用到了artemplate模板,关于artemplate的好处就不多说了,直接上干货
1. <script src="js/template-native-debug.js"></script> 源代码可以在github上下载
2.
<script id="tpl" type="text/html">
<div clas="menu">
<% for(var i=0;i< data.length;i++){ %>
<div clas="all">
<h2><%= data[i].title %></h2>
<p class="intro"><%= data[i].imtro%></p>
<% for(var j=0;j< data[i].albums.length;j++){ %>
<img src="<%= data[i].albums[j] %>"> //细节: 这里不用加+号,加+号就没有效果
<% } %>
<p class="zl">主料:<%= data[i].ingredients %></p>
<p class="fl">辅料:<%= data[i].burden %></p>
<div class="steps">
<%for(var p=0;p< data[i].steps.length;p++) {%>
<em class="xh"><%= p+1 %>.</em>
<div class="c">
<p><%= data[i].steps[p].step %></p>
<p><img src="<%= data[i].steps[p].img %>"></p>
</div>
</div>
<%}%>
</div>
<hr/>
<% } %> </div>
</script>
var data = {
"resultcode": "200",
"reason": "Success",
"result": {
"data": [{
"id": "45",
"title": "秘制红烧肉",
"tags": "家常菜;热菜;烧;煎;炖;红烧;炒锅",
"imtro": "做红烧肉的豆亲们很多,大家对红烧肉的热爱更不用我说,从名字上就能反映出来。一些高手们对红烧肉的认识更是令我佩服,单单就红烧肉的做法、菜谱都看得我是眼花缭乱,口水横流。单纯的红烧肉我平时还真没做过,再不抓紧时间做一回解解馋,不是对不起别人,而是太对不起我自己了! 这道菜的菜名用了秘制二字来形容,当然是自己根据自己多年吃货的经验想象出来的,我不介意把自己的做法与大家共享,只为大家能同我一样,吃到不同口味的红烧肉。不同的人们根据自己的习惯都有不同的做法,味道也不尽相同。我的秘制的关键就是必须用玫瑰腐乳、冰糖和米醋这三种食材,腐乳和冰糖可以使烧出来的肉色泽红亮,米醋能解腻,令肥肉肥而不腻,此法烧制的红烧肉软糯中略带咸甜,的确回味无穷!",
"ingredients": "五花肉,500g",
"burden": "玫瑰腐乳,适量;盐,适量;八角,适量;草果,适量;香叶,适量;料酒,适量;米醋,适量;生姜,适量",
"albums": ["http:\/\/img.juhe.cn\/cookbook\/t\/0\/45_854851.jpg"],
"steps": [{
"img": "http:\/\/img.juhe.cn\/cookbook\/s\/1\/45_0824e37faf00b71e.jpg",
"step": "1.将五花肉煮至断生状态"
},
{
"img": "http:\/\/img.juhe.cn\/cookbook\/s\/1\/45_b6d7329b703f6e85.jpg",
"step": "2.切成大小一致的块"
},
{
"img": "http:\/\/img.juhe.cn\/cookbook\/s\/1\/45_6ee9e8dab0516333.jpg",
"step": "3.放在锅内煎"
},
{
"img": "http:\/\/img.juhe.cn\/cookbook\/s\/1\/45_b9afd6d4dd81f55c.jpg",
"step": "4.入生姜"
},
{
"img": "http:\/\/img.juhe.cn\/cookbook\/s\/1\/45_d0170fbe236421f9.jpg",
"step": "5.放八角草果各一个,香叶一片"
},
{
"img": "http:\/\/img.juhe.cn\/cookbook\/s\/1\/45_639b12210745fa41.jpg",
"step": "6.放冰糖"
},
{
"img": "http:\/\/img.juhe.cn\/cookbook\/s\/1\/45_c25e0cedd2012f45.jpg",
"step": "7.加料酒"
},
{
"img": "http:\/\/img.juhe.cn\/cookbook\/s\/1\/45_eb68327980f022dd.jpg",
"step": "8.加玫瑰腐乳和腐乳汁及适量盐"
},
{
"img": "http:\/\/img.juhe.cn\/cookbook\/s\/1\/45_ac17263a11507a41.jpg",
"step": "9.加米醋"
},
{
"img": "http:\/\/img.juhe.cn\/cookbook\/s\/1\/45_f5489af5d12b4930.jpg",
"step": "10.加水继续炖"
},
{
"img": "http:\/\/img.juhe.cn\/cookbook\/s\/1\/45_8e0cf83cb7306281.jpg",
"step": "11.直至肉变软糯汤汁收干即可"
}]
},
]
}],
"totalNum": "306",
"pn": "1",
"rn": "3"
},
"error_code": 0
}
var html = template("tpl",data.result);
$("#menu").html(html);
通过这些代码可以实现与字符串拼接或者手动生成节点一样的效果,但是这种方式更方便,在使用中遇到了一些问题:
1. <img src="<%= data[i].albums[j] %>"> //细节: 这里不用加+号,加+号就没有效果
2.使用if,else 直接<% if(data){ %>html <% }else{ %> html <% } %>即可
artemplate使用的更多相关文章
- arTemplate解析语法
模板解析语法 defaults.parser = function (code, options) { // var match = code.match(/([\w\$]*)(\b.*)/); // ...
- artemplate模板
artTemplate 介绍 最近使用了一款模板,学习成本比较低,性能也不错.觉得很好用,所以推荐给大家. artTemplate 是新一代 javascript 模板引擎,它采用预编译方式让性能有了 ...
- artemplate include
include用于嵌入字模板 {{include 'template_name'}} 子模板 默认共享当前的数据 也可以自己指定数据 {{include 'template_name' templat ...
- vue-cli@2的原理解析
作为一个菜鸟,我有一颗好奇的心,每当vue init 的时候,看到那流畅的进度和神奇的结果,心里都充满一窥其本质的期望…… 以下就是我不断的console,大致理出来的一个流程心得,纪录在此,以作备忘 ...
随机推荐
- 怎样在chrome中内置扩展,以及一些简单的定制
本文中chromium 版本为54 参考资料: chromium如何新增extension API以及添加内部扩展 http://slides.com/luyuan/grit#/ 一.嵌入扩展 1. ...
- 基于C++11的线程池,简洁且可以带任意多的参数
咳咳.C++11 加入了线程库,从此告别了标准库不支持并发的历史.然而 c++ 对于多线程的支持还是比较低级,稍微高级一点的用法都需要自己去实现,譬如线程池.信号量等.线程池(thread pool) ...
- Angular企业级开发(7)-MVC之控制器
1.MVC中的控制器 AngularJS的控制器主要为了把模型和视图连接在一起.大多数业务逻辑操作都会放在视图对应的控制器中.当然如果我们能够把业务逻辑放到后端的REST服务中,就可以开发轻量级Ang ...
- xcode8 更新cocoapods
一.升级ruby环境,由于目前淘宝Ruby镜像升级有问题,所以使用了 http://rubygems-china.oss.aliyuncs.com 二.需要操作的步骤: 1.检查你的ruby源,终端输 ...
- 每天一个linux命令(53)--ps命令
要毁掉一天,从早上开始. Linux中的ps命令是 process status 的缩写.ps 命令用来列出系统中当前运行的那些进程.ps 命令列出的是当前那些进程的快照,就是执行ps 命令的那个时刻 ...
- Thread类常用方法
Thread类构造方法: 1.Thread(): 2.Thread(String name): 3.Thread(Runable r): 4.Thread(Runable r, String name ...
- Linux的常用基本命令。
Linux的常用基本命令. 首先启动Linux.启动完毕后需要进行用户的登录,选择登陆的用户不同自然权限也不一样,其中"系统管理员"拥有最高权限. 在启动Linux后屏幕出现如下界 ...
- 令人眼前一亮的下拉式终端 Tilda & Guake
前言 老夫是 Linux 的老用户. 大一的时候某不方便透露姓名的校内组织给了一个 Fedora 13 的安装光盘,然后老夫学会了重装 Windows. 大二的时候知道了 Ubuntu ,开始在虚拟机 ...
- 《深入理解Java虚拟机》学习笔记之最后总结
编译器 Java是编译型语言,按照编译的时期不同,编译器可分为: 前端编译器:其实叫编译器的前端更合适些,它把*.java文件转变成*.class文件,如Sun的Javac.Eclipse JDT中的 ...
- [干货来袭]C#7.0新特性(VS2017可用)
前言 微软昨天发布了新的VS 2017 ..随之而来的还有很多很多东西... .NET新版本 ASP.NET新版本...等等..太多..实在没消化.. 分享一下其实2016年12月就已经公布了的C#7 ...