增加统一的分页设置
This commit is contained in:
@@ -1,19 +1,18 @@
|
||||
<template>
|
||||
<div class="ai-table" :class="[isShowBorder ? 'ai-table__border' : 'ai-table__noborder']">
|
||||
<el-table
|
||||
:data="tableData"
|
||||
header-cell-class-name="ai-table__header"
|
||||
cell-class-name="ai-table__cell"
|
||||
row-class-name="ai-table__row"
|
||||
:class="{'ai-header__border': isShowBorder}"
|
||||
:ref="refName"
|
||||
:size="tableSize"
|
||||
:stripe="stripe"
|
||||
:tooltip-effect="tooltipEffect"
|
||||
@selection-change="handleSelectionChange"
|
||||
v-on="$listeners"
|
||||
v-bind="$attrs"
|
||||
v-loading="loading">
|
||||
<el-table :data="tableData"
|
||||
header-cell-class-name="ai-table__header"
|
||||
cell-class-name="ai-table__cell"
|
||||
row-class-name="ai-table__row"
|
||||
:class="{'ai-header__border': isShowBorder}"
|
||||
:ref="refName"
|
||||
:size="tableSize"
|
||||
:stripe="stripe"
|
||||
:tooltip-effect="tooltipEffect"
|
||||
@selection-change="handleSelectionChange"
|
||||
v-on="$listeners"
|
||||
v-bind="$attrs"
|
||||
v-loading="loading">
|
||||
<template v-for="colConfig in colConfigs.filter(e=>!e.hide)">
|
||||
<slot v-if="colConfig.slot && colConfig.slot !== 'options'" :name="colConfig.slot"/>
|
||||
<component
|
||||
@@ -52,7 +51,7 @@
|
||||
</template>
|
||||
</el-table-column>
|
||||
</template>
|
||||
<slot class="table-options" name="options"></slot>
|
||||
<slot class="table-options" name="options"/>
|
||||
<template #empty>
|
||||
<slot v-if="$scopedSlots.empty" name="empty"/>
|
||||
<div v-else class="no-data" style="height:160px;"/>
|
||||
@@ -61,7 +60,7 @@
|
||||
<div class="pagination newPagination" v-if="isShowPagination">
|
||||
<el-pagination
|
||||
background
|
||||
:current-page.sync="page.current"
|
||||
:current-page="page.current"
|
||||
:total="page.total"
|
||||
:page-size="page.size"
|
||||
v-bind="$attrs"
|
||||
@@ -72,8 +71,7 @@
|
||||
@current-change="handleChange">
|
||||
<div class="paginationPre">
|
||||
<el-checkbox v-if="isHasPaginationBtnsSlot" :disabled="!tableData.length" :indeterminate="isIndeterminate"
|
||||
:value="checkAll"
|
||||
@click.native="toggleAllSelection">全选
|
||||
:value="checkAll" @click.native="toggleAllSelection">全选
|
||||
</el-checkbox>
|
||||
<slot name="pagination"/>
|
||||
<div class="pagination-btns">
|
||||
@@ -112,7 +110,8 @@ export default {
|
||||
tableRef: String,
|
||||
dict: {default: () => dict},
|
||||
pagerCount: {default: 5},
|
||||
pageSizes: {default: () => [10, 20, 50, 100]}
|
||||
pageSizes: {default: () => [10, 20, 50, 100]},
|
||||
pageConfig: Object
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
@@ -150,6 +149,7 @@ export default {
|
||||
checkAll: v => v.chooseList.length == v.tableData.length && v.tableData !== 0,
|
||||
page() {
|
||||
return {
|
||||
...this.pageConfig,
|
||||
current: this.current,
|
||||
size: this.size,
|
||||
total: this.total,
|
||||
@@ -158,14 +158,16 @@ export default {
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
handleChange(e) {
|
||||
this.$emit('update:current', e)
|
||||
handleChange(current) {
|
||||
this.$emit('update:current', current)
|
||||
this.$emit('update:pageConfig', {...this.pageConfig, current})
|
||||
this.$nextTick(() => {
|
||||
this.$emit('getList')
|
||||
})
|
||||
},
|
||||
handleSizeChange(e) {
|
||||
this.$emit('update:size', e)
|
||||
handleSizeChange(size) {
|
||||
this.$emit('update:size', size)
|
||||
this.$emit('update:pageConfig', {...this.pageConfig, size})
|
||||
this.$nextTick(() => {
|
||||
this.$emit('getList')
|
||||
})
|
||||
@@ -175,16 +177,13 @@ export default {
|
||||
this.$emit('handleSelectionChange', e)
|
||||
},
|
||||
getValue(colConfig, row) {
|
||||
if (this.isFunction(colConfig.format)) {
|
||||
if (typeof colConfig.format === 'function') {
|
||||
return colConfig.format.call(this, row[colConfig.prop])
|
||||
}
|
||||
if (colConfig.dateFormat) {
|
||||
return moment(row[colConfig.prop]).format(colConfig.dateFormat)
|
||||
}
|
||||
return row[colConfig.prop]|| "-"
|
||||
},
|
||||
isFunction(fun) {
|
||||
return typeof fun === 'function'
|
||||
return row[colConfig.prop] || "-"
|
||||
},
|
||||
/**
|
||||
* 表格方法代理
|
||||
|
||||
Reference in New Issue
Block a user