前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >前端最常用的模板引擎-Handlebars

前端最常用的模板引擎-Handlebars

作者头像
王小婷
发布2018-12-10 09:59:04
1.5K0
发布2018-12-10 09:59:04
举报
文章被收录于专栏:编程微刊

接触过的模板引擎不算多,只用过jsp和ejs,jsp属于Java语系范畴也不算难,对于大前端来说,Handlebars怎么能够缺席,前端必须掌握技能之一,模板引擎Handlebars。

Handlebars 是 JavaScript 一个语义模板库,通过对viewdata的分离来快速构建Web模板。Handlebars是全球使用率最高的模板引擎,也成为全球最受欢迎的模板引擎,Handlebars模板看起来和HTML一样,只是嵌入了handlebars表达式。

附上参考教程:https://www.jianshu.com/p/2ad73da601fc

优点: 1:使用Handlebars,可以轻松创建语义化模板; 2:可以保证模板加载和运行的速度; 3:基本语法极其简单,使用{{value}}将数据包装起来即可; 4:轻量级,兼容性好;

步骤:

1:使用<script>标签引入handlebars模板:

代码语言:javascript
复制
<!--创建一个模版,id是必须的-->
<script id="entry-template" type="text/x-handlebars-template">
    <div class="entry">
     
    </div>
</script>

2:在javascript中使用Handlebars.compile编译模板:

代码语言:javascript
复制
 //获取模版里面的内容
    var source = $("#entry-template").html();
    //模版渲染
    var template = Handlebars.compile(source);

3:看一下具体的例子:

代码语言:javascript
复制
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.js"></script>
    <script src="https://cdn.bootcss.com/handlebars.js/4.0.6/handlebars.js"></script>
    <title>handlebars</title>
</head>
<body>

<div class="box"></div>
</body>
<!--创建一个模版,id是必须的-->
<script id="entry-template" type="text/x-handlebars-template">
    <div class="entry">
        <h1>{{title}}</h1>
        <div class="body">
            {{body}}
        </div>
    </div>
</script>

<script type="text/javascript">
    //获取模版里面的内容
    var source = $("#entry-template").html();
    //模版渲染
    var template = Handlebars.compile(source);
    //定义数据
    var context = {title: "王小婷的空间", body: "欢迎来到王小婷的世界里"};
    var html = template(context);
    //模版装载到dom节点上
    $(".box").html(html);
</script>
</html>

原文作者:祈澈姑娘 技术博客:https://www.jianshu.com/u/05f416aefbe1 90后前端妹子,爱编程,爱运营,爱折腾。 坚持总结工作中遇到的技术问题,坚持记录工作中所所思所见,欢迎大家一起探讨交流。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018.11.08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档