element-ui匯出excel表格,程式碼基於vue-element-admin-master
1、安裝外掛
npm install js-xlsx file-saver -S
npm install script-loader -S -D //它幫我們掛載了,不需要引入到main.js裡面
2、在src下建立一個資料夾vendor,並且引入Export2Excel.js
此處附上我專案中vendor的連結,直接拷過去就好:
vendor檔案拷貝連結
3、html中表格
<el-table
id="excel-table"
v-loading="loading"
ref="filterTable"
:data="tableData" //表格中顯示的是tableDate中的內容
style="width: 100%">
<el-table-column
prop="id"
label="Id"
sortable
width="80"
></el-table-column>
<el-table-column
prop="date"
label="日期"
sortable
width="180"
column-key="date"
:formatter="fmtTime"
>
</el-table-column>
<el-table-column prop="name" label="姓名" width="180"></el-table-column>
<el-table-column prop="address" label="地址" :formatter="formatter"></el-table-column>
<el-table-column
prop="tag"
label="標籤"
width="100"
:filters="[{ text: '家', value: '家' }, { text: '公司', value: '公司' }]"
:filter-method="filterTag"
filter-placement="bottom-end"
>
<template slot-scope="scope">
<el-tag
:type="scope.row.tag === '家' ? 'primary' : 'success'"
disable-transitions
>{{scope.row.tag}}</el-tag>
</template>
</el-table-column>
<el-table-column label="操作">
<template slot-scope="scope">
<el-button @click="dialogFormVisible = true" size="mini" type="primary">Edit</el-button>
<el-button @click="del(scope.row.id)" size="mini" type="danger">Delete</el-button>
</template>
</el-table-column>
</el-table>
4、button下載按鈕
<el-button
:loading="downloadLoading"
class="filter-item"
type="primary"
icon="el-icon-download"
@click="handleDownload" //繫結了handleDownload方法
>Export</el-button>
5、tableDate中的資料,這個可根據自己的要求來
tableData: [
{
id: 1,
date: "2016-05-02",
name: "王小虎",
address: "上海市普陀區金沙江路 1518 弄",
tag: "家"
},
{
id: 2,
date: "2016-05-04",
name: "王小虎",
address: "上海市普陀區金沙江路 1517 弄",
tag: "公司"
},
{
id: 3,
date: "2016-05-01",
name: "王小虎",
address: "上海市普陀區金沙江路 1519 弄",
tag: "家"
},
{
id: 4,
date: "2016-05-03",
name: "王小虎",
address: "上海市普陀區金沙江路 1516 弄",
tag: "公司"
},
{
id: 5,
date: "2016-04-02",
name: "王小虎",
address: "上海市普陀區金沙江路 1516 弄",
tag: "公司"
}
],
6、下載按鈕繫結的方法handleDownload
handleDownload() {
// this.downloadLoading = true;
import("@/vendor/Export2Excel").then(excel => {
const tHeader = ["id", "date", "name", "address", "tag"];//要匯出後表頭是什麼,可以跟tableDate中的表頭不一致
const filterVal = [
"id",
"date",
"name",
"address",
"tag"
];
const data = this.formatJson(filterVal, this. tableData)
// const data = this.tableData;
excel.export_json_to_excel({
header: tHeader,
data,
filename: "table-list" //匯出檔案的名,自定義就好
});
// this.downloadLoading = false;
});
},
//下載方法中,需要用到的格式化json的方法
formatJson(filterVal, jsonData) {
return jsonData.map(v =>
filterVal.map(j => {
if (j === "id") { //此處如沒有要格式化的列,可以不用此判斷
// return parseTime(v[j])
return v[j];
} else {
return v[j];
}
})
);
},
相關文章
- element-UI庫Table表格匯出Excel表格UIExcel
- Element-ui元件庫Table表格匯出Excel表格UI元件Excel
- element-ui匯出表格UI
- Vue element-ui 裡面的table匯出excel表格 步驟VueUIExcel
- element-ui 匯出excelUIExcel
- Element-ui,Vue表格匯出生成Excel表UIVueExcel
- js匯出Excel表格JSExcel
- vue匯出Excel表格VueExcel
- springboot poi匯出excel表格Spring BootExcel
- vue + element + 匯入、匯出excel表格VueExcel
- vue+elementUI表格匯出excelVueUIExcel
- Vue實現匯出excel表格VueExcel
- vue將表格匯出為excelVueExcel
- 基於 PhpSpreadsheet 簡單 Excel 匯入匯出PHPExcel
- abp框架Excel匯出——基於vue框架ExcelVue
- poi 匯出Excel java程式碼ExcelJava
- vue匯出excel資料表格功能VueExcel
- vue實現前端匯出excel表格Vue前端Excel
- 前端常用方法之匯出excel表格前端Excel
- 騰訊文件怎樣匯出excel表格 騰訊文件如何匯出excelExcel
- 基於NPOI封裝匯出Excel方法封裝Excel
- Vue匯出資料到Excel電子表格VueExcel
- vue2.0 匯出Excel表格資料VueExcel
- 基於DotNetCoreNPOI封裝特性通用匯出excelNetCore封裝Excel
- 基於EPPlus和NPOI實現的Excel匯入匯出Excel
- node 抓取api資料匯出為excel表格APIExcel
- vue+elementUI el-table匯出excel表格VueUIExcel
- vue匯出excel表格步驟以及易出錯點VueExcel
- 基於Vue + axios + WebApi + NPOI匯出Excel檔案VueiOSWebAPIExcel
- 不想用POI?幾行程式碼完成Excel匯出匯入行程Excel
- vue+element將資料匯出成excel表格VueExcel
- php如何將資料匯出成excel表格呢?PHPExcel
- java 匯入到EXCEL表格JavaExcel
- python讀寫Excel表格程式碼PythonExcel
- Python 基於 xlsxwriter 實現百萬資料匯出 excelPythonExcel
- 關於java中Excel的匯入匯出JavaExcel
- 將資料庫中資料匯出為excel表格資料庫Excel
- Spring學習手冊 2:Spring MVC 匯出excel表格SpringMVCExcel