一、elementui 分页器无法实现分页效果的解决办法,困惑多时😩😩

在做项目时其中有一个页面需要用到 elementui 中的 pagination组件 进行分页显示,但是按照官方文档配置后结果始终不能分页显示数据,全部数据都显示在一个页面上,点击下面的分页数字无响应

教务管理系统 (五)_数据


解决办法:

进行数据的分割 ,把获取的全部数据线储存在一个数组(rightData)中,再新建一个数组(listData),里面存放按要求分割的数据段(比如要求每页显示 10 条数据 , 就每次向rightData里面按顺序切割10条数据放在 listData中 遍历listData渲染页面)

完整代码:

  1. 在components 文件中新建一个 Pagination.vue
/**
* 分页组件
*/
<template>
  <el-pagination class="page-box" @size-change="handleSizeChange" @current-change="handleCurrentChange" background :current-page="childMsg.currentPage" :page-sizes="[4, 10, 15]" :page-size="childMsg.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="childMsg.total">
  </el-pagination>
</template>
<script>
export default {
  name: 'Pagination',
  props: ['childMsg'],
  data () {
    return {
      pageparm: {
        currentPage: this.childMsg.currentPage,
        pageSize: this.childMsg.pageSize
      }
    }
  },
  created () {},
  methods: {
    handleSizeChange (val) {
      /**
       * 子传父
       * 参数1 父元素方法
       * 参数2 数据
       */
      this.pageparm.pageSize = val
      this.$emit('callFather', this.pageparm)
    },
    handleCurrentChange (val) {
      /**
       * 子传父
       * 参数1 父元素方法
       * 参数2 数据
       */
      this.pageparm.currentPage = val
      this.$emit('callFather', this.pageparm)
    }
  }
}
</script>

<style>
.page-box {
  margin: 10px auto;
}
</style>
  1. 然后在需要分页器的组件中引用封装好的 Pagination
<Pagination :child-msg="pageparm" @callFather="callFather"></Pagination>

教务管理系统 (五)_ios_02


3. data域

教务管理系统 (五)_分页_03


4. methods方法域:

教务管理系统 (五)_分页_04


二、 如何实现 elementui 中的 button 组件的 value值 进行数据绑定

首先我们知道 :model

可以如下所示进行数据绑定

<el-button type="info" class="getJudgeCode" @click="getJudgeCode(stuForm)" :disabled="disabled" :model="buttomValue" >{{buttomValue}}</el-button>

教务管理系统 (五)_ios_05


三、获取验证码60秒倒计时逻辑代码

教务管理系统 (五)_数据_06


data域:

教务管理系统 (五)_分页_07

method域:

教务管理系统 (五)_分页_08


四、 vue + Java 前后端分离,多次请求Session不一致的问题 (以下是前端配置)

这是典型的跨域问题
解决方法:

Vue项目用的axios发送请求,在main.js中增加以下配置:

import axios from 'axios'

axios.defaults.withCredentials = true // 解决前端跨域问题

使用时,设置 withCredentials: true(请求时携带凭证信息)

如下所示:

教务管理系统 (五)_数据_09