artTemplate用法 以及子模板
2019-05-30 18:34
120 查看
条件
{{if value}} ... {{/if}} {{if v1}} ... {{else if v2}} ... {{/if}}
循环
{{each target}} {{$index}} {{$value}} {{/each}}
变量
<div id="test"></div> <script type="text/html" id="testTpl"> {{each list}} {{set temp = $value * 10}} 用上变量后值是:{{temp}}<br> {{/each}} </script> <script src="http://localhost:8888/wcp_web_war_exploded/text/javascript/template.js"></script> <script> var data = { list: [10, 20, 30] }; test.innerHTML = template('testTpl', data); </script>
artTemplate子模板与递归
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <title>Examples</title> <meta name="description" content=""> <meta name="keywords" content=""> <link href="" rel="stylesheet"> </head> <body> <div id="test"></div> <script type="text/html" id="parentTpl"> <ul> {{each list}} <li> <h5>{{$value.title}}</h5> {{include 'childTpl' $value}} </li> {{/each}} </ul> </script> <script type="text/html" id="childTpl"> <ul> {{each children}} <li> <h5>{{$value.title}}</h5> {{include 'childTpl' $value}} </li> {{/each}} </ul> </script> <script src="js/template.js"></script> <script> var data = { list: [{ title: '广东省', children: [{ title: '广州市', children: [{ title: '越秀区', }] }, { title: '深圳市', children: [{ title: '福田区', children: [{ title: '梅林街道', children: [ { title: '上梅林社区' }, { title: '下梅林社区' }, { title: '新兴社区' } ] }, { title: '香蜜湖街道' } ] }, { title: '南山区' } ] }, { title: '东莞市' } ] }, { title: '湖南省', children: [ { title: '长沙市', children: [{ title: '岳麓区', }] }, { title: '株洲市' }, { title: '湘潭市' } ] } ] }; var html = template('parentTpl', data); var el = document.getElementById('test'); el.innerHTML = html; </script> </body> </html>
过滤器
讲真这个过滤器的语法设计得有点反人类,理解起来挺费劲的
<div id="test"></div> <script type="text/html" id="testTpl"> {{each list}} {{$value | double | sum 100 200}} <!--这句话的意思是$value作为double的参数,然后把double返回的结果作为sum的第一个参数,100为sum的第二个参数,200为sum的第三个参数 --> {{/each}} {{10 | double}} <!--这句话的意思是10为double的参数 --> </script> <script src="js/template.js"></script> <script> template.defaults.imports.sum = function(a, b, c) { return a + b + c; }; template.defaults.imports.double = function(n) { return n * 2; }; var data = { list: [10, 20, 30] }; test.innerHTML = template('testTpl', data); </script>
相关文章推荐
- thinkjs——art-template模板用法
- 高性能JavaScript模板引擎-artTemplate快速上手
- art-template模板中的template.helper( )
- javascript模板引擎之artTemplate 学习笔记
- 模板引擎artTemplate及模板预编译器TmodJS的使用入门
- arttemplate两种用法
- 快速上手—js前端模板引擎——artTemplate的初次使用
- 使用模板引擎artTemplate的几个问题总结
- js模板引擎art-template.js使用方法
- C++模板template用法总结
- 【Web】artTemplate模板引擎:编译(生成渲染函数)+渲染(生成HTML串) 模板:基于JS的语法(JS+自定义)+HTML
- golang模板template自定义函数用法示例
- artTemplate里一个比不上jQuery tmpl模板的地方就是放一个数组进去它不会自动循环.
- 详解js模板引擎art template数组渲染的方法
- Golang 页面模板之模板中如何插入数据,输出嵌套字段内容?以及神奇的减号“-”,如何去掉Go Template生成的标签换行符
- 超快的模板引擎 artTemplate.js
- js模板引擎-art-template常用总结(转)
- artTemplate模板引擎
- 模板字符串(artTemplate)
- 必须掌握的前端模板引擎之art-template