1.自定义demo

<html>
<head>
<script src="./handlebars-v4.0.12.js"></script>
</head>
<body>
<ul id='tmpContainer1'></ul>
<ul id = 'tmpContainer2'></ul> <!--案例1-->
<script id='tmp1' type="text/x-handlebars-template">
{{#each people}}
<li>{{name}}</li>
{{/each}}
</script>
<script type="text/javascript">
//1.定义模板填充用的参数
var content = {
people : [
{name:'aa', age: 12},
{name:'bb', age: 12},
{name:'cc', age: 15},
{name:'dd', age: 16},
]
}
//2.定义模板
var template1 = Handlebars.compile(document.getElementById("tmp1").innerHTML);
//3.模板套用填充参数,返回模板填充结果
var html1 = template1(content);
//4.将模板填充的结果嵌入到页面响应位置
document.getElementById("tmpContainer1").innerHTML = html1;
</script> <!--======================================================--> <!--案例2-->
<script id = 'tmp2' type="text/x-handlebars-template">
{{#each people}}
<li>{{combine this}}</li>
{{/each}}
</script>
<script>
var content = {
people : [
{name:'aa', age: 12},
{name:'bb', age: 12},
{name:'cc', age: 15},
{name:'dd', age: 16},
]
}
//注意helper的注册要先于 Handlebars.compile()的执行,否则报错。
Handlebars.registerHelper('combine',function(item){
return item.name + ' '+ item.age;
}) var template2 = Handlebars.compile(document.getElementById("tmp2").innerHTML);
var html2 = template2(content);
document.getElementById("tmpContainer2").innerHTML = html2; </script>
</body>
</html>

2. 更多demo(较详细介绍)请参看如下博客

http://www.cnblogs.com/zcynine/p/5014421.html

最新文章

  1. 安卓android sharepreference数据存储,保存输入框里面的数据
  2. 剑指Offer-【面试题05:从头到尾打印链表】
  3. 用好spring mvc validator可以简化代码
  4. log4net配置和获取ILog实例
  5. Yii2 行为
  6. Different Ways to Add Parentheses
  7. BigDecimal类的加减乘除
  8. Git教程之删除文件(8)
  9. WebDeploy to remote IIS
  10. rhce 第十题 配置NFS服务
  11. Linux 防火墙
  12. 线上Slave报1062的案例
  13. Codeforces 785E. Anton and Permutation
  14. python3.7安装
  15. MediaPlayer音乐播放器、上一首、下一首、播放、停止、自动下一首、进度条
  16. HTML常用模板:用DIV实现网站首页、后台管理首页(整理)
  17. (转) mysqldumpslow使用说明总结
  18. configuration on ubuntu server
  19. Linux环境更改Jenkins的主目录
  20. 编辑器配置 vscode / Atom / Sublime Text

热门文章

  1. mybatis在动态 SQL 中使用了参数作为变量,必须要用 @Param 注解
  2. .NET平台系列30:.NET Core/.NET 学习资源汇总
  3. mybatis入“坑”第一步
  4. redis不完整的事务实现Transaction
  5. MySQL 为什么使用 B+ 树来作索引?
  6. 20204107 孙嘉临《Python程序设计》实验三报告
  7. MATLAB导入txt和excel文件技巧汇总:批量导入、单个导入
  8. 信奥赛一本通1573:分离与合体C++分离与合体
  9. Jquery 插件 chosen_v1.8.7 下拉复选框带搜索功能
  10. 『心善渊』Selenium3.0基础 — 22、使用浏览器加载项配置实现用户免登陆