最近因工作需要接触到 mustache
.
首先什么是mustache呢
Mustache 模板语法的逻辑比较简单。它用于HTML,配置文件,源代码等。它的工作方式是通过通过以哈希值或者对象的方式扩展模板标签。
github 项目地址
mustache简单使用
1.简单的变量调换:{{name}}
示例如下 :
var data = { "name": "Willy" };
Mustache.render("{{name}} is awesome.",data); //Willy is awesome.
2.若是变量含有html的代码的,例如:<br>、<tr>
等等而不想转义可以在用{{&name}}
示例如下 :
var data = {"name" : "<br>Willy<br>"};
var output = Mustache.render("{{&name}} is awesome.", data); //<br>Willy<br> is awesome.
PS : 去掉"&"的成果是转义为:<br>Willy<br> is awesome.
3.mustache 和 PHP 结合使用
在没使用mustache之前,使用ajax获取到数据之后,是通过 拼接html
代码来实现的,大概如下 :
var $tpl = $('<div><li class='name'></li></div>');
$tpl.find('.name').text('XXX');
引入mustache
之后 代码如下 :
<script src="mustache.js"></script>
<script id="myTemplate" type="text/html"> //声明一个模板
<div class="cc">
<div class="name">{{name}}</div>
</div>
</script>
<script>
$(function(){
$.getJSON('mustache.php',function(json){ //获取数据 渲染到页面
for (var i in json) {
var tpl = Mustache.render($('#myTemplate').html(), json[i]);
$('.show').append(tpl);
}
})
$(document).on('click','.name',function(){ //对添加的元素绑定事件
console.log($(this).text());
})
})
</script>
//PHP代码
$arr = array(
array('id'=>1,'name'=>'小茗同学'),
array('id'=>1,'name'=>'小莉同学')
);
exit(json_encode($arr));
结尾
关于mustache
还有很对其他的使用方法,作者在github
也给出详细的示例.
github项目主页 传送门
最后.本人非专业前端,如有错误 还望指正
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。