template-web使用方法
好久没有用template模板, 然后重新复习了一下,顺便也分享一下!
其中在调用 template(id, data)
方法的时候,要注意2个参数:
1. 第一个参数是 模板 script
标签的 id名
2. 第二个参数是 要渲染的数据, 注意:这是一个对象
下面的按例就是渲染一个数组的多条数据
使用{{ each file v i }} … {{ /each }}
就可以渲染多条数据
其中 file
就是对象中的键名,v
表示 value(也就是数组的每个元素), i
表示 下标值
渲染带有标签的字符串
只需在渲染的变量前面 添加#
号就可以了(如下按例)
<!DOCTYPE html>
<html lang='en'>
<head>
<meta charset='UTF-8'>
<title>Title</title>
</head>
<body>
<h3>模板引擎的使用</h3>
<ul></ul>
</body>
</html>
<!-- 模板 -->
<!-- 引入模板引擎js -->
<script src='./api/template-web.js'></script>
<!-- 制作模板 -->
<script type="text/html" id="template">
{{each file v i}}
---------------
<li>姓名{{v.name}}</li>
<li>年龄{{v.age}}</li>
<li>电话{{#v.phone}}</li>
{{/each}}
</script>
<script>
// 获取数据
// 遍历数据的模板数据要是对象形式
var data = {
file: [{
name:"Ray",
age:"18",
phone:"<span style='color: red'>18233989613</span>"
},{
name:"Ray",
age:"18",
phone:"<strong>18233989613</strong>"
},{
name:"Ray",
age:"18",
phone:"18233989613"
}]
};
// 将数据放入模板中(第二个参数要是对象)
var res = template("template", data);
console.log(res);
// 将模板放入页面中
document.body.innerHTML = res;
</script>