(精華)2020年7月18日 vue element-ui實現動態表格
固定表頭, 按照表頭順序排序
<template>
<div class="app-container">
<div class="filter-container">
<el-checkbox-group v-model="checkboxVal">
<el-checkbox label="apple">
apple
</el-checkbox>
<el-checkbox label="banana">
banana
</el-checkbox>
<el-checkbox label="orange">
orange
</el-checkbox>
</el-checkbox-group>
</div>
<el-table :key="key" :data="tableData" border fit highlight-current-row style="width: 100%">
<el-table-column prop="name" label="fruitName" width="180" />
<el-table-column v-for="fruit in formThead" :key="fruit" :label="fruit">
<template slot-scope="scope">
{{ scope.row[fruit] }}
</template>
</el-table-column>
</el-table>
</div>
</template>
<script>
const defaultFormThead = ['apple', 'banana']
export default {
data() {
return {
tableData: [
{
name: 'fruit-1',
apple: 'apple-10',
banana: 'banana-10',
orange: 'orange-10'
},
{
name: 'fruit-2',
apple: 'apple-20',
banana: 'banana-20',
orange: 'orange-20'
}
],
key: 1, // table key
formTheadOptions: ['apple', 'banana', 'orange'],
checkboxVal: defaultFormThead,
formThead: defaultFormThead
}
},
watch: {
checkboxVal(valArr) {
this.formThead = this.formTheadOptions.filter(i => valArr.indexOf(i) >= 0)
this.key = this.key + 1
}
}
}
</script>
不固定表頭, 按照點選順序排序
<template>
<div class="app-container">
<div class="filter-container">
<el-checkbox-group v-model="formThead">
<el-checkbox label="apple">
apple
</el-checkbox>
<el-checkbox label="banana">
banana
</el-checkbox>
<el-checkbox label="orange">
orange
</el-checkbox>
</el-checkbox-group>
</div>
<el-table :data="tableData" border fit highlight-current-row style="width: 100%">
<el-table-column prop="name" label="fruitName" width="180" />
<el-table-column v-for="fruit in formThead" :key="fruit" :label="fruit">
<template slot-scope="scope">
{{ scope.row[fruit] }}
</template>
</el-table-column>
</el-table>
</div>
</template>
<script>
export default {
data() {
return {
tableData: [
{
name: 'fruit-1',
apple: 'apple-10',
banana: 'banana-10',
orange: 'orange-10'
},
{
name: 'fruit-2',
apple: 'apple-20',
banana: 'banana-20',
orange: 'orange-20'
}
],
formThead: ['apple', 'banana']
}
}
}
</script>
相關文章
- (精華)2020年7月18日 vue element-ui實現表格拖動排序VueUI排序
- (精華)2020年7月18日 vue element-ui實現表格可編輯VueUI
- 基於element-ui實現的vue版的動態表單UIVue
- (精華)2020年7月14日 vue vue-router動態路由的實現許可權控制Vue路由
- AntDesign - Vue Table元件 實現動態表格、表頭分組的功能(方式一)Vue元件
- element-ui table表格元件實現手風琴效果UI元件
- Element-ui,Vue表格匯出生成Excel表UIVueExcel
- 用Vue、element-ui、axios實現省市區三級聯動VueUIiOS
- vue2.0使用vue-seamless-scroll實現表格平滑滾動Vue
- vue 實現動態拓撲圖Vue
- Vue實現匯出excel表格VueExcel
- vue3.0使用vue3-seamless-scroll實現表格平滑滾動Vue
- vue實現前端匯出excel表格Vue前端Excel
- Vue element-ui 裡面的table匯出excel表格 步驟VueUIExcel
- VUE動態路由和按鈕的實現Vue路由
- vue+iview 實現可編輯表格VueView
- element-ui匯出表格UI
- element-UI庫Table表格匯出Excel表格UIExcel
- Vue.set()實現資料動態響應Vue
- vue + element 實現快速關閉動態tabs功能Vue
- Element-ui元件庫Table表格匯出Excel表格UI元件Excel
- 記一次Vue動態渲染路由的實現Vue路由
- element-ui 的表格裡面使用 el-popover 實現編輯彈層功能UI
- Vue + Element UI + Lumen 實現通用表格功能 - 分頁VueUI
- vue中elementUI的表格實現自定義編輯VueUI
- JavaScript動態建立table表格JavaScript
- element-ui匯出excel表格,程式碼基於vue-element-admin-masterUIExcelVueAST
- vue的狀態管理實現Vue
- JavaScript動態建立表格和增加表格的行JavaScript
- Vue 利用後端的資料字典和Map物件實現表格列欄位動態轉義的處理方案Vue後端物件
- vue 實現tab切換動態載入不同的元件Vue元件
- 基於vue實現web端超大資料量表格VueWeb大資料
- 說說如何基於 Vue.js 實現表格元件Vue.js元件
- Vue+ElementUI實現表單動態渲染、視覺化配置VueUI視覺化
- Vue專案中路由動態傳參功能相關實現Vue路由
- Vue | 自定義指令和動態路由實現許可權控制Vue路由
- 短視訊直播系統,Vue實現element-ui彈框可以拖拽VueUI
- VUE 實現 Studio 管理後臺(四):狀態模式實現視窗停靠,靈動、自由Vue模式