template-web.js模板引擎的使用之高级篇

对于 template-web.js模板引擎还不了解的,建议学习上一篇, template-web.js模板引擎的初级使用。

本文将介绍template-web.js模板引擎的三个使用api 【1.逻辑语句if...else...   2.原文输出    3.循环语句each】

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

    <style type="text/css">

        div{
            border: red 1px solid;
            margin-top: 10px;
        }

    </style>
</head>
<body>

    <div id="ifBox"></div>

    <div id="norBox"></div>

    <div id="eachBox"></div>

<!--
     引入模板引擎:一般用于在网络请求之后,展示相同的多条数据
-->
<script type="text/javascript" src="js/template-web.js" ></script>

<!--
     1.逻辑语句---条件语句的使用
-->
<script type="text/html" id="ifPersonTemplate">
<ul>
    {{if sex=="女"}}
    <li>姓名:{{name}} 女士
       <ol>
           <li>最新款的包包</li>
           <li>你真{{skill}}</li>
       </ol>
    </li>
    {{else if sex=="男"}}
    <li>姓名:{{name}} 先生
        <ol>
            <li>最新款的西装</li>
            <li>你真{{skill}}</li>
        </ol>
    </li>
    {{/if}}
</ul>
</script>
<script type="text/javascript">

    //定义数据
    var person1 = {
        name:"赵丽颖",
        sex:"女",
        skill:"可爱"
    };

    var person2 = {
        name:"胡歌",
        sex:"男",
        skill:"帅气"
    };

    /**
     * 利用模板引擎 引用数据填充到模板中
     *
     * 参数一:模板id
     * 参数二:数据
     */
   var result =  template("ifPersonTemplate",person1);
    var result2 =  template("ifPersonTemplate",person2);

    //将返回的模板结果添加到界面中
    var ifBox = document.getElementById("ifBox");
    ifBox.innerHTML = result + result2;
</script>

<!--
     2.原文输出
-->
<script type="text/html" id="norTemplate">
     <ul>
         <li>{{name}}</li>
         <li>{{skill}}</li>
         <li>{{@info}}</li>
     </ul>
</script>
<script type="text/javascript">

    var data = {
       name:"漩涡鸣人",
       skill:"多重影分身",
       info:"<a href='https://baike.baidu.com/item/%E6%BC%A9%E6%B6%A1%E9%B8%A3%E4%BA%BA/322717?fr=aladdin'>个人信息</a>"
    };

    var result = template("norTemplate",data);

    var norBox = document.getElementById("norBox");
    norBox.innerHTML = result;

</script>

<!--
     3.循环语句
-->
<script type="text/html" id="eachTemplate">

     <ul>
         <li>组织: {{key}}}</li>
         <li>组员:
             {{each person}}
               <ol> {{$index}}{{$value}} </ol>
             {{/each}}
         </li>

         <li>组员信息:
             {{each info}}
             <ol>{{$value.name}} --- {{$value.age}} </ol>
             {{/each}}
         </li>
     </ul>
</script>
<script type="text/javascript">
      var family = {
          key:"APP开饭团队",
          person:[
              "刘强",
              "黄冲",
              "熊斌"
          ],
          info:[
              {name:"刘强",age:23},
              {name:"黄冲",age:26},
              {name:"熊斌",age:22}
          ]
      };

      var result = template("eachTemplate",family);

      var eachBox = document.getElementById("eachBox");
      eachBox.innerHTML = result;
</script>
</body>
</html>
下一篇将介绍文web端另一个模板引擎 Handlerbars的使用,敬请期待
  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值