使用模板引擎渲染列表

使用模板引擎渲染列表

前题:

1.启动服务器,node .\app.js
2.将文档doc>index.html打开
3 引入js数据
  <script src="./libs/template-web.js"></script>

第一步: 静态结构

 <tr>
         <td>1</td>
         <td>大乔</td>
         <td>大</td>
         <td>100</td>
         <td>50</td>
         <td><img src=""></td>
         <td>
         <button type="button" class="btn btn-warning">上传头像</button>
         <button type="button" class="btn btn-danger">删除</button>
      </td>
  </tr>

第二步:使用ajax获取数据

<script>
    // 函数入口
    $(function () {
      $.ajax({
        type:'get', //方式
        url: 'http://127.0.0.1:3001/getProductList',//地址
        dataType: 'json',//数据类型
        // 函数回调res
        success: function (res) {
          console.log(res);
        }
      })
    })
 </script>

第三步:分析数据

找到数据与模板对应

在这里插入图片描述

在这里插入图片描述

第四步:创建模板结构

注意要避免在遍历里面写注释

数据应该是个对象

 <!-- 遍历创建模板结构 -->
  <script type="text/template" id="xiaoTemp">
    {{each}}
      <tr>
            <td>1</td>
            <td>大乔</td>
            <td>大</td>
            <td>100</td>
            <td>50</td>
            <td><img src=""></td>
            <td>
              <button type="button" class="btn btn-warning">上传头像</button>
              <button type="button" class="btn btn-danger">删除</button>
            </td>
          </tr>
    {{/each}}
  </script>

第五步:调用模板引擎

模板中使用你所传入的数据对象的属性名称,他会根据属性名称找到对应的值来使用

遍历data意味着后期根据所传入的res对象获取data属性的值(数组)来使用

res是对象

<!-- 遍历创建模板结构 -->
  <!-- $index:索引 $value:代表数据的成员 -->
  <!-- each 遍历的对象或数组 v=== $value  i===$index -->
  <script type="text/template" id="xiaoTemp">
    {{each data v i}}
      <tr>
        <td>{{i+1}}</td>
        <td>{{v.name}}</td>
        <td>{{v.subName}}</td>
        <td>{{v.marketPrice}}</td>
        <td>{{v.memberPrice}}</td>
        <td><img src="{{v.src}}"></td>
        <td>
          <button type="button" class="btn btn-warning">上传头像</button>
          <button type="button" class="btn btn-danger">删除</button>
        </td>
      </tr>
    {{/each}}
  </script>

调用模板引擎

$.ajax({
        url: 'http://127.0.0.1:3001/getProductList',
        dataType: 'json',
        success: function (res) {
          // console.log(res);
          if (res.code == 200) {
            // 调用模板引擎
            let html = template('xiaoTemp', res)
            console.log(html);           
          }
        }
      })

第六步:填充到指定位置

 <!-- 表格主体 -->
        <tbody id="tbody">
          <!-- tr 是一行内容 -->

        </tbody>
  $('#tbody').html(html)

位置

 <!-- 表格主体 -->
        <tbody id="tbody">
          <!-- tr 是一行内容 -->

        </tbody>
  $('#tbody').html(html)
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值