35-四层架构---前台项目开发

68 阅读1分钟

一、添加bootstrap和vue的依赖,创建users.html

image.png

   <!-- 导入bootstrap -->
   <link href="assets/bootstrap-3.3.7-dist/css/bootstrap.min.css" rel="stylesheet">
   <script src="assets/jquery-3.5.1.min.js"></script>
   <script src="assets/bootstrap-3.3.7-dist/js/bootstrap.min.js"></script>
   <!-- 导入vue -->
   <script src="assets/vue.min-v2.5.16.js"></script>
   <script src="assets/axios.min.js"></script>

二、前端代码

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

  <!--导入bootstrap-->
  <link href="assets/bootstrap-3.3.7-dist/css/bootstrap.min.css" rel="stylesheet">
  <script src="assets/jquery-3.5.1.min.js"></script>
  <script src="assets/bootstrap-3.3.7-dist/js/bootstrap.min.js"></script>
  <!--导入vue-->
  <script src="assets/vue.min-v2.5.16.js"></script>
  <script src="assets/axios.min.js"></script>

  <title>Title</title>
</head>
<body>
  <div id="app" class="container">
      <table class="table table-striped"><!--斑马条纹格式 class="table table-striped" -->
          <caption>用户列表</caption> <!--表格说明-->
          <thead> <!--表头-->
              <tr>
                  <th>ID</th>
                  <th>用户名</th>
                  <th>创建日期</th>
              </tr>
          </thead>
          <tbody> <!--表内容-->
              <tr v-for="u in users">
                  <td>{{u.id}}</td>
                  <td>{{u.userName}}</td>
                  <td>{{u.createDate}}</td>
              </tr>
          </tbody>
      </table>

      <!--分页器(bootstrap的一款导航)-->
      <ul class="pagination" v-for="p in pageNum">
          <li v-if="p == pageIndex" class="active"><a href="#" @click="doGo(p)">{{p}}</a></li>
          <li v-else="p == pageIndex"><a href="#" @click="doGo(p)">{{p}}</a></li>
      </ul>
  </div>
  <script>
      new Vue({
          el: '#app',
          data:{
              users: null,
              //分页用
              pageIndex : 1,//第几页
              pageSize : 10,//每页显示几条数据
              pageTotle : 0,//信息总条数
              pageNum : 0//一共有几页
          },
          methods:{
              //发送请求,获取用户列表
              requestUserList(url){
                  axios.get(url).then(response => {
                      console.log(response.data)
                      this.users=response.data.data;//后面的data对应后台Pager实体类
                      this.pageTotle = response.data.pageTotle;
                      this.pageNum = Math.ceil(this.pageTotle/this.pageSize); //向上取整 Math.ceil
                  });
              },
              doGo(p){
                  this.pageIndex = p;
                  var url='http://127.0.0.1:8080/user/list?pageIndex='+p+'&pageSize='+this.pageSize;
                  this.requestUserList(url);//请求调用用户列表的函数
              }
          },
          created: function (){
              var url='http://127.0.0.1:8080/user/list?pageIndex='+this.pageIndex+'&pageSize='+this.pageSize;
              this.requestUserList(url);//请求调用用户列表的函数
          }
      });
  </script>
</body>
</html>

三、页面效果

image.png