Files
vxe-table/examples/views/table/edit/Revert.vue
2020-01-13 14:49:03 +08:00

104 lines
3.4 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<template>
<div>
<p class="tip">
设置 <table-api-link prop="keep-source"/> 开启保持原始值状态通过调用 <table-api-link prop="revertData"/> 还原数据<br>
<span class="red">开启 keep-source 将会导致性能直线下降具体取决于数据量</span>
</p>
<vxe-toolbar>
<template v-slot:buttons>
<vxe-button @click="$refs.xTable.revertData()">还原全部</vxe-button>
<vxe-button @click="$refs.xTable.removeSelecteds()">删除选中</vxe-button>
</template>
</vxe-toolbar>
<vxe-table
ref="xTable"
border
show-overflow
keep-source
:data="tableData"
:edit-config="{trigger: 'click', mode: 'cell', showStatus: true}">
<vxe-table-column type="checkbox" width="60"></vxe-table-column>
<vxe-table-column type="seq" width="60"></vxe-table-column>
<vxe-table-column field="name" title="Name" :edit-render="{name: 'input'}"></vxe-table-column>
<vxe-table-column field="sex" title="Sex" :edit-render="{name: 'input'}"></vxe-table-column>
<vxe-table-column field="age" title="Age" :edit-render="{name: 'input'}"></vxe-table-column>
<vxe-table-column title="操作">
<template v-slot="{ row }">
<vxe-button @click="$refs.xTable.revertData(row)">还原</vxe-button>
</template>
</vxe-table-column>
</vxe-table>
<p class="demo-code">{{ $t('app.body.button.showCode') }}</p>
<pre>
<code class="xml">{{ demoCodes[0] }}</code>
<code class="javascript">{{ demoCodes[1] }}</code>
</pre>
</div>
</template>
<script>
import hljs from 'highlight.js'
export default {
data () {
return {
tableData: [],
demoCodes: [
`
<vxe-toolbar>
<template v-slot:buttons>
<vxe-button @click="$refs.xTable.revertData()">还原全部</vxe-button>
<vxe-button @click="$refs.xTable.removeSelecteds()">删除选中</vxe-button>
</template>
</vxe-toolbar>
<vxe-table
ref="xTable"
border
show-overflow
keep-source
:data="tableData"
:edit-config="{trigger: 'click', mode: 'cell', showStatus: true}">
<vxe-table-column type="checkbox" width="60"></vxe-table-column>
<vxe-table-column type="seq" width="60"></vxe-table-column>
<vxe-table-column field="name" title="Name" :edit-render="{name: 'input'}"></vxe-table-column>
<vxe-table-column field="sex" title="Sex" :edit-render="{name: 'input'}"></vxe-table-column>
<vxe-table-column field="age" title="Age" :edit-render="{name: 'input'}"></vxe-table-column>
<vxe-table-column title="操作">
<template v-slot="{ row }">
<vxe-button @click="$refs.xTable.revertData(row)">还原</vxe-button>
</template>
</vxe-table-column>
</vxe-table>
`,
`
export default {
data () {
return {
tableData: []
}
},
created () {
this.tableData = window.MOCK_DATA_LIST.slice(0, 6)
}
}
`
]
}
},
created () {
let list = window.MOCK_DATA_LIST.slice(0, 6)
this.tableData = list
},
mounted () {
Array.from(this.$el.querySelectorAll('pre code')).forEach((block) => {
hljs.highlightBlock(block)
})
}
}
</script>