console
var Main = {
data() {
return {
}
},
methods: {
mockList(size) {
return new Promise(resolve => {
const list = []
for (let index = 0; index < size; index++) {
list.push({
name: `名称${index}`,
sex: '0',
num: 123,
age: 18,
num2: 234,
rate: 3,
address: 'shenzhen'
})
}
resolve(list)
})
},
handleClick({ name }) {
}
},
mounted() {
const $table1 = this.$refs.xTable1
this.mockList(500).then(data => {
if ($table1) {
$table1.loadData(data)
}
})
const $table2 = this.$refs.xTable2
this.mockList(500).then(data => {
if ($table2) {
$table2.loadData(data)
}
})
}
};
var app = new Vue(Main).$mount('#app')
<script src="https://unpkg.com/vue@2.6.0">
</script>
<script src="https://unpkg.com/xe-utils">
</script>
<script src="https://unpkg.com/vxe-table@3">
</script>
<script src="https://unpkg.com/element-ui/lib/index.js">
</script>
<div id="app">
<template>
<div>
<h2>VXETable虚拟滚动Tab切换</h2>
<br>
<br>
<el-tabs @tab-click="handleClick">
<el-tab-pane label="表格-1" name="first">
<div style="height: 500px">
<vxe-table
border
show-overflow
ref="xTable1"
height="auto"
:row-config="{isHover: true}">
<vxe-column type="seq" width="100"></vxe-column>
<vxe-column field="name" title="Name"></vxe-column>
<vxe-column field="sex" title="Sex"></vxe-column>
<vxe-column field="age" title="Age"></vxe-column>
<vxe-column field="address" title="Address"></vxe-column>
</vxe-table>
</div>
</el-tab-pane>
<el-tab-pane label="表格-2" name="second">
<div style="height: 500px">
<vxe-table
border
show-overflow
ref="xTable2"
height="auto"
:row-config="{isHover: true}">
<vxe-column type="seq" width="100"></vxe-column>
<vxe-column field="name" title="Name"></vxe-column>
<vxe-column field="sex" title="Sex"></vxe-column>
<vxe-column field="age" title="Age"></vxe-column>
<vxe-column field="address" title="Address"></vxe-column>
</vxe-table>
</div>
</el-tab-pane>
</el-tabs>
</div>
</template>
</div>
@import url("https://unpkg.com/vxe-table/lib/style.css");
@import url("https://unpkg.com/element-ui/lib/theme-chalk/index.css")