table.js 1.14 KB
import { mapGetters } from 'vuex'
export default {
  data () {
    return {
      // 分页
      pageData: {
        currentPage: 1,
        pageSize: 10
      }
    }
  },
  computed: {
    ...mapGetters(['dicData']),
  },
  mounted () {
    if (this.queryClick) {
      this.queryClick()
    }
  },
  methods: {
    handleSizeChange (val) {
      this.pageData.currentPage = 1
      this.pageData.pageSize = val
      this.queryClick()
    },
    handleCurrentChange (val) {
      this.pageData.currentPage = val
      if (this.queryClick) {
        this.queryClick()
      }
    },
    handleDel () {
      let deleteAfterPage = Math.ceil((this.tableData.total - 1) / this.pageData.pageSize)
      let currentPage = this.pageData.currentPage > deleteAfterPage ? deleteAfterPage : this.pageData.currentPage
      this.pageData.currentPage = currentPage < 1 ? 1 : currentPage
    },
    // 重置表单
    resetForm () {
      if (!this.form) return
      Object.keys(this.form).forEach((key) => {
        if (key !== 'currentPage') this.form[key] = '';
      })
      this.form.currentPage = 1
      this.tableData.data = []
      this.queryClick()
    }
  }
}