中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

漢中網(wǎng)站建設(shè)百度搜索資源平臺token

漢中網(wǎng)站建設(shè),百度搜索資源平臺token,武漢影樓網(wǎng)站建設(shè),接單網(wǎng)站設(shè)計 只做設(shè)計圖報價一、vxe-table 導(dǎo)入導(dǎo)出功能概述 vxe-table 的導(dǎo)入導(dǎo)出功能在數(shù)據(jù)處理中具有至關(guān)重要的作用。在現(xiàn)代數(shù)據(jù)管理和處理的場景中,高效地導(dǎo)入和導(dǎo)出數(shù)據(jù)是提高工作效率的關(guān)鍵。 對于導(dǎo)入功能而言,它允許用戶將外部的表格數(shù)據(jù),如 Excel 文件&…

一、vxe-table 導(dǎo)入導(dǎo)出功能概述

vxe-table 的導(dǎo)入導(dǎo)出功能在數(shù)據(jù)處理中具有至關(guān)重要的作用。在現(xiàn)代數(shù)據(jù)管理和處理的場景中,高效地導(dǎo)入和導(dǎo)出數(shù)據(jù)是提高工作效率的關(guān)鍵。

對于導(dǎo)入功能而言,它允許用戶將外部的表格數(shù)據(jù),如 Excel 文件,快速地導(dǎo)入到 vxe-table 中進行進一步的處理和分析。例如,在企業(yè)的數(shù)據(jù)分析平臺中,用戶可以將從不同渠道收集到的 Excel 數(shù)據(jù)文件導(dǎo)入到系統(tǒng)中,利用 vxe-table 的強大功能進行數(shù)據(jù)的篩選、排序、合并等操作。據(jù)統(tǒng)計,使用 vxe-table 的導(dǎo)入功能可以大大節(jié)省數(shù)據(jù)錄入的時間,提高數(shù)據(jù)處理的效率。

而導(dǎo)出功能同樣不可或缺。它可以將 vxe-table 中的數(shù)據(jù)以多種格式導(dǎo)出,如 CSV、Excel 等,滿足不同用戶的需求。在報表系統(tǒng)中,用戶可以將經(jīng)過處理和分析的數(shù)據(jù)以 Excel 格式導(dǎo)出,方便進行進一步的數(shù)據(jù)分析和制作報表。同時,vxe-table 的導(dǎo)出功能還支持自定義文件名和工作表名稱,使得導(dǎo)出的數(shù)據(jù)更加易于管理和識別。

vxe-table 的導(dǎo)入導(dǎo)出功能廣泛應(yīng)用于各種場景。在數(shù)據(jù)管理平臺中,可以方便地導(dǎo)入和導(dǎo)出大量數(shù)據(jù),實現(xiàn)數(shù)據(jù)的快速更新和備份。在編輯系統(tǒng)中,用戶可以將編輯好的數(shù)據(jù)導(dǎo)出保存,或者從外部導(dǎo)入數(shù)據(jù)進行編輯。在數(shù)據(jù)分析平臺中,導(dǎo)入導(dǎo)出功能更是必不可少,可以幫助用戶快速地將數(shù)據(jù)導(dǎo)入進行分析,然后將結(jié)果導(dǎo)出進行匯報和分享。

總之,vxe-table 的導(dǎo)入導(dǎo)出功能為用戶提供了高效、便捷的數(shù)據(jù)處理方式,在各種數(shù)據(jù)處理場景中都發(fā)揮著重要的作用。

二、準備工作與配置

(一)開啟導(dǎo)入導(dǎo)出按鈕

在 vxe-table 中,開啟導(dǎo)入和導(dǎo)出按鈕非常簡單。只需要在 toolbarConfig 中設(shè)置 import: true?和 export: true,即可在工具欄中顯示導(dǎo)入和導(dǎo)出按鈕。這樣,用戶可以方便地進行數(shù)據(jù)的導(dǎo)入和導(dǎo)出操作。

(二)配置導(dǎo)入導(dǎo)出屬性

  1. exportConfig?屬性設(shè)置:
    • remote: true:表示啟用遠程導(dǎo)出模式。在這種模式下,可以通過調(diào)用后端接口來實現(xiàn)數(shù)據(jù)的導(dǎo)出。
    • exportMethod: this.doExport:指定導(dǎo)出方法,該方法將在用戶點擊導(dǎo)出按鈕時被調(diào)用。
    • types: ['xlsx', 'xls']:設(shè)置支持的導(dǎo)出文件類型為 Excel 的 xlsx 和 xls 格式。
    • modes: ['current', 'selected', 'all']:定義導(dǎo)出模式,可以選擇導(dǎo)出當前頁數(shù)據(jù)、選中的數(shù)據(jù)或者全部數(shù)據(jù)。
  2. importConfig?屬性設(shè)置:
    • remote: true:同樣啟用遠程導(dǎo)入模式,通過后端接口處理導(dǎo)入的文件。
    • importMethod: this.importMethod:指定導(dǎo)入方法,用于處理用戶上傳的文件。
    • types:['xlsx', 'xls']:支持導(dǎo)入的文件類型與導(dǎo)出一致,為 Excel 的 xlsx 和 xls 格式。
    • modes: ['insert']:定義導(dǎo)入模式為插入模式,即將導(dǎo)入的數(shù)據(jù)插入到現(xiàn)有數(shù)據(jù)中。

三、導(dǎo)入方法詳解

(一)自定義服務(wù)端導(dǎo)入

在 vxe-table 中,自定義服務(wù)端導(dǎo)入通過一系列步驟實現(xiàn)。首先,創(chuàng)建一個處理表單的方法,將上傳的文件添加到 FormData?對象中,這樣可以方便地將文件數(shù)據(jù)發(fā)送到后端。例如:

const formBody = new FormData();

formBody.append('file', file);

然后,將這個表單數(shù)據(jù)上傳到后端接口,通常使用 fetch?或者其他網(wǎng)絡(luò)請求庫來實現(xiàn)。

return usersApi.importExcel(formBody).then(rest => {

????if (rest.status === 200) {

????????this.$refs.grid.commitProxy('query');

????????this.$message({

????????????type: 'success',

????????????message: '導(dǎo)入成功'

????????});

????} else {

????????this.$message({

????????????type: 'error',

????????????message: '導(dǎo)入失敗'

????????});

????}

}).catch(() => {

????this.$message({ content: '導(dǎo)入失敗,請檢查數(shù)據(jù)是否正確!', status: 'error' });

});

這樣的導(dǎo)入方式可以確保數(shù)據(jù)的準確性和完整性,同時也方便后端對數(shù)據(jù)進行處理和驗證。如果導(dǎo)入成功,系統(tǒng)會給出相應(yīng)的提示,讓用戶知道操作的結(jié)果。

(二)前端導(dǎo)入方法及問題解決

在前端導(dǎo)入時,可能會遇到一些問題。例如,vxetable 自帶的導(dǎo)入功能可能存在 bug,這時可以借用第三方庫 xlsx?來解決。首先需要安裝 xlsx,可以通過 npm install xlsx?進行安裝。

在導(dǎo)入過程中,使用以下代碼實現(xiàn):

import XLSX from "xlsx";

onImport(){

????this.$refs.dataTable.readFile({types:['xls','xlsx']}).then(params =>{

????????const{ files }= params;

????????const fileReader = new FileReader();

????????fileReader.οnlοad=(ev)=>{

????????????const data = ev.target.result;

????????????const workbook = XLSX.read(data,{ type:'binary'});

????????????const csvData = XLSX.utils.sheet_to_csv(workbook.Sheets.Sheet1);

????????????const tableData =[];

????????????// 解析數(shù)據(jù)

????????????csvData.split('\n').forEach((vRow)=>{

????????????????if(vRow){

????????????????????const vCols = vRow.split(',');

????????????????????const item ={};

????????????????????vCols.forEach((val, cIndex)=>{

????????????????????????const column = this.tableColumn[cIndex];

????????????????????????if(column.field){

????????????????????????????item[column.field]= val;

????????????????????????}

????????????????????});

????????????????????tableData.push(item);

????????????????}

????????????});

????????????this.tableData1 = tableData;

????????}

????????fileReader.readAsBinaryString(files[0]);

????});

}

通過這樣的方式,可以有效地解決 vxetable 自帶導(dǎo)入功能的 bug,實現(xiàn)前端的表格數(shù)據(jù)導(dǎo)入。

四、導(dǎo)出方法詳解

(一)自定義服務(wù)端導(dǎo)出

在 vxe-table 中,自定義服務(wù)端導(dǎo)出通常需要以下步驟。首先,設(shè)置后端接口,接收必要的參數(shù),如數(shù)據(jù)范圍、文件名、文件格式等。例如,可以通過在后端接口中接收 dataRange?參數(shù)來確定導(dǎo)出的數(shù)據(jù)范圍是全部數(shù)據(jù)、當前頁數(shù)據(jù)還是選中的數(shù)據(jù)。

參數(shù)設(shè)置方面,還可以接收 fileName?參數(shù)來指定導(dǎo)出文件的名稱,以及 fileFormat?參數(shù)來確定導(dǎo)出文件的格式,如 xlsx、csv?等。在后端的數(shù)據(jù)處理流程中,根據(jù)接收到的參數(shù)從數(shù)據(jù)庫或其他數(shù)據(jù)源中獲取相應(yīng)的數(shù)據(jù)。

然后,將數(shù)據(jù)進行格式轉(zhuǎn)換,以便生成指定格式的文件。對于 Excel 文件格式,可以使用庫如 xlsx?來生成工作簿和工作表,并將數(shù)據(jù)填充到工作表中。同時,還可以設(shè)置工作表的名稱、表頭樣式等。

最后,將生成的文件以流的形式返回給前端,前端可以通過 Blob?對象和 download?屬性來觸發(fā)文件的下載。例如,后端可以設(shè)置響應(yīng)頭 Content-Type?為 application/vnd.openxmlformats-officedocument.spreadsheetml.sheet?來表示返回的是 Excel 文件,前端接收到響應(yīng)后,創(chuàng)建一個 Blob?對象并設(shè)置下載鏈接,實現(xiàn)文件的下載。

(二)前端導(dǎo)出方法

使用 vxe-table 進行前端導(dǎo)出非常方便。首先,可以通過設(shè)置 exportData?方法的參數(shù)來控制導(dǎo)出的行為。例如,可以設(shè)置 filename?參數(shù)來指定導(dǎo)出文件的名稱,設(shè)置 sheetName?參數(shù)來指定工作表的名稱,設(shè)置 type?參數(shù)來確定導(dǎo)出文件的格式,如 xlsxcsv?等。

在設(shè)置文件名時,可以根據(jù)實際需求進行動態(tài)命名,比如加上當前時間戳,以便區(qū)分不同時間導(dǎo)出的文件。例如:

this.$refs.xTable.exportData({

????filename: 'data_export_' + moment().format('YYYYMMDDhhmmss'),

????sheetName: 'Sheet1',

????type: 'xlsx'

});

對于導(dǎo)出格式的選擇,可以根據(jù)用戶的需求和實際情況進行設(shè)置。如果需要導(dǎo)出為 Excel 文件,可以選擇 xlsx?格式;如果需要導(dǎo)出為 CSV 文件,可以選擇 csv?格式。同時,還可以設(shè)置一些其他參數(shù),如 useStyle?參數(shù)來確定是否導(dǎo)出樣式,isFooter?參數(shù)來確定是否導(dǎo)出表尾等。

總之,通過 vxe-table 的前端導(dǎo)出方法,可以方便地將表格中的數(shù)據(jù)以多種格式導(dǎo)出,滿足不同用戶的需求。

五、userApi 對接后臺

(一)導(dǎo)出接口

在 vxe-table 中,通過 userApi 的導(dǎo)出函數(shù)可以方便地與后端接口進行交互,實現(xiàn)數(shù)據(jù)的導(dǎo)出操作。首先,需要定義一個導(dǎo)出函數(shù),例如:

export function doExport() {

????var params = {};

????// 設(shè)置文件名,可根據(jù)實際需求添加時間戳等信息以便區(qū)分不同的導(dǎo)出文件

????var fileName = "data_export_" + moment().format("YYYYMMDDhhmmss");

????// 發(fā)送請求,假設(shè) xxx 為接口名稱

????xxx(params).then(res => {

????????const blob = new Blob([res], { type: 'application/vnd.ms-excel' });

????????const url = window.URL.createObjectURL(blob);

????????const a = document.createElement('a');

????????a.href = url;

????????a.download = fileName + '.xlsx';

????????a.click();

????????window.URL.revokeObjectURL(url);

????});

}

在這個函數(shù)中,首先定義了一些參數(shù)和文件名,然后通過調(diào)用后端接口 xxx(params)?來獲取數(shù)據(jù)。后端接口返回的數(shù)據(jù)通常是一個流文件,前端通過 Blob?對象和創(chuàng)建臨時的下載鏈接來觸發(fā)文件的下載。

(二)導(dǎo)入接口

導(dǎo)入函數(shù)與后端的交互過程相對復(fù)雜一些。首先,需要定義一個導(dǎo)入函數(shù),例如:

const formBody = new FormData();

formBody.append('file', file);

return usersApi.importExcel(formBody).then(rest => {

????if (rest.status === 200) {

????????this.$refs.grid.commitProxy('query');

????????this.$message({

????????????type: 'success',

????????????message: '導(dǎo)入成功'

????????});

????} else {

????????this.$message({

????????????type: 'error',

????????????message: '導(dǎo)入失敗'

????????});

????}

}).catch(() => {

????this.$message({ content: '導(dǎo)入失敗,請檢查數(shù)據(jù)是否正確!', status: 'error' });

});

在這個函數(shù)中,首先創(chuàng)建一個 FormData?對象,將上傳的文件添加到其中。然后,通過調(diào)用 usersApi.importExcel(formBody)?來將文件數(shù)據(jù)發(fā)送到后端接口。后端接口接收到文件后,會對文件進行處理,例如解析 Excel 文件中的數(shù)據(jù),進行數(shù)據(jù)驗證等操作。如果導(dǎo)入成功,后端會返回一個成功的狀態(tài)碼,前端接收到這個狀態(tài)碼后,會給出相應(yīng)的提示,并可以通過 this.$refs.grid.commitProxy('query')?來刷新表格數(shù)據(jù),顯示導(dǎo)入后的數(shù)據(jù)。如果導(dǎo)入失敗,后端會返回一個錯誤的狀態(tài)碼或者錯誤信息,前端接收到后會給出相應(yīng)的錯誤提示,讓用戶知道導(dǎo)入失敗的原因。

六、后臺數(shù)據(jù)解析

(一)導(dǎo)出數(shù)據(jù)處理

在后端,根據(jù)不同的導(dǎo)出模式查詢不同的數(shù)據(jù)集進行數(shù)據(jù)處理和導(dǎo)出操作。例如,當接收到前端的導(dǎo)出請求時,后端會根據(jù)請求中的參數(shù)判斷導(dǎo)出模式。如果是 “current” 模式,即導(dǎo)出當前頁數(shù)據(jù),會調(diào)用特定的查詢函數(shù)queryCurrentData(entity)獲取當前頁的數(shù)據(jù)。如果是 “selected” 模式,會調(diào)用querySelectedData(entity)獲取已選擇的數(shù)據(jù)。對于 “all” 模式,則調(diào)用queryAllData(entity)獲取所有的數(shù)據(jù)。

在獲取到數(shù)據(jù)后,會進行一系列的數(shù)據(jù)處理操作。首先創(chuàng)建一個ExportEntity<UserExport>對象,將前端傳遞的參數(shù)復(fù)制到這個對象中。然后根據(jù)具體的業(yè)務(wù)需求對數(shù)據(jù)進行進一步的處理,比如設(shè)置數(shù)據(jù)的格式、添加特定的字段等。最后,使用ExportUtil.doExportExcel(response, exportEntity, UserExport.class)方法將處理后的數(shù)據(jù)以指定的格式(如 Excel)導(dǎo)出,并返回給前端。

(二)導(dǎo)入數(shù)據(jù)處理

后端在處理導(dǎo)入的文件數(shù)據(jù)時,首先通過@PostMapping("/inportExcel")注解定義的接口接收前端上傳的文件。文件上傳后,使用EasyExcel.read(file.getInputStream()).head(UserExport.class).sheet().doReadSync()方法讀取文件中的數(shù)據(jù),并將其轉(zhuǎn)換為特定的實體類UserExport的列表。

讀取到數(shù)據(jù)后,將數(shù)據(jù)批量插入表中。這個過程通常涉及數(shù)據(jù)庫操作,根據(jù)具體的數(shù)據(jù)庫框架和業(yè)務(wù)邏輯,可能會使用循環(huán)遍歷數(shù)據(jù)列表,然后逐個插入數(shù)據(jù)庫表中,或者使用批量插入的方法提高效率。

例如,假設(shè)使用的是某種 ORM 框架,可以通過以下方式批量插入數(shù)據(jù):

userService.importData(dataList);

其中,userService是一個服務(wù)類,負責(zé)處理數(shù)據(jù)的插入操作。通過這樣的方式,后端能夠高效地處理導(dǎo)入的文件數(shù)據(jù),并將其存儲到數(shù)據(jù)庫中,以供后續(xù)的查詢和分析使用。

七、功能實現(xiàn)與結(jié)論

(一)功能實現(xiàn)效果展示

在實際應(yīng)用中,vxe-table 的導(dǎo)入導(dǎo)出功能表現(xiàn)出色。通過導(dǎo)入功能,可以快速將外部數(shù)據(jù)整合到系統(tǒng)中,大大提高了數(shù)據(jù)錄入的效率。例如,在一個企業(yè)的數(shù)據(jù)分析項目中,工作人員需要將多個 Excel 文件中的數(shù)據(jù)匯總到一個系統(tǒng)中進行分析。使用 vxe-table 的導(dǎo)入功能,只需簡單幾步操作,就可以將大量數(shù)據(jù)快速導(dǎo)入,節(jié)省了大量的時間和人力成本。

而導(dǎo)出功能則可以將系統(tǒng)中的數(shù)據(jù)以多種格式導(dǎo)出,滿足不同用戶的需求。比如,在制作報表時,可以將數(shù)據(jù)以 Excel 格式導(dǎo)出,方便進行進一步的數(shù)據(jù)分析和排版。在與其他系統(tǒng)進行數(shù)據(jù)交互時,可以選擇 CSV 格式,便于數(shù)據(jù)的傳輸和處理。

(二)EasyExcel 的優(yōu)勢

EasyExcel 在 vxe-table 的導(dǎo)入導(dǎo)出功能中發(fā)揮了重要作用。它具有以下優(yōu)勢:

  1. 高效性:能夠快速讀取和寫入大量數(shù)據(jù),大大提高了數(shù)據(jù)處理的效率。據(jù)統(tǒng)計,使用 EasyExcel 進行數(shù)據(jù)導(dǎo)入和導(dǎo)出的速度比傳統(tǒng)的方式快數(shù)倍甚至數(shù)十倍。
  2. 靈活性:支持多種數(shù)據(jù)格式,如 Excel(.xlsx、.xls)、CSV 等,可以滿足不同用戶的需求。同時,EasyExcel 還提供了豐富的 API,可以根據(jù)具體的業(yè)務(wù)需求進行定制化開發(fā)。
  3. 易用性:EasyExcel 的 API 設(shè)計簡潔明了,易于使用。即使是沒有太多技術(shù)背景的用戶,也可以通過簡單的學(xué)習(xí)快速掌握其使用方法。

(三)結(jié)論

總之,vxe-table 的導(dǎo)入導(dǎo)出功能為用戶提供了高效、便捷的數(shù)據(jù)處理方式。通過與 EasyExcel 等工具的結(jié)合,進一步提高了數(shù)據(jù)處理的效率和靈活性。在實際應(yīng)用中,用戶可以根據(jù)自己的需求選擇合適的導(dǎo)入導(dǎo)出方式,實現(xiàn)數(shù)據(jù)的快速整合和共享。無論是在企業(yè)的數(shù)據(jù)管理平臺、報表系統(tǒng),還是在個人的數(shù)據(jù)分析項目中,vxe-table 的導(dǎo)入導(dǎo)出功能都能發(fā)揮重要的作用。

http://m.risenshineclean.com/news/62769.html

相關(guān)文章:

  • 微商怎么做網(wǎng)站深圳網(wǎng)絡(luò)推廣收費標準
  • 小清新個人網(wǎng)站今日頭條新聞發(fā)布
  • 企業(yè)家居網(wǎng)站建設(shè)東莞seo建站
  • 網(wǎng)站flash引導(dǎo)頁下載廣州最新疫情最新消息
  • 做投資的網(wǎng)站好百度搜索官網(wǎng)
  • b2b電子商務(wù)的模式有哪些seo是指什么崗位
  • 嘉興快速建站合作阿里云域名注冊官網(wǎng)網(wǎng)址
  • 做的網(wǎng)站百度沒收錄關(guān)鍵詞舉例
  • 怎么看網(wǎng)站是用什么程序做的百度網(wǎng)頁電腦版入口
  • 簡單網(wǎng)頁html模板西安的網(wǎng)絡(luò)優(yōu)化公司
  • 網(wǎng)站建設(shè) 網(wǎng)址導(dǎo)航網(wǎng)站seo啥意思
  • 常州免費網(wǎng)站制作百度推廣登錄后臺登錄入口
  • 做外包胡it網(wǎng)站有哪些網(wǎng)頁設(shè)計公司
  • 建個可以注冊會員網(wǎng)站多少錢陽泉seo
  • 做網(wǎng)站運維應(yīng)該看的書朋友圈產(chǎn)品推廣文案
  • 玉林市城鄉(xiāng)建設(shè)委員會網(wǎng)站什么軟件可以免費引流
  • 百度站長工具鏈接提交長沙優(yōu)化網(wǎng)站
  • 網(wǎng)站建設(shè)銷售好做合肥seo網(wǎng)站排名
  • 網(wǎng)站運營團隊成人大專
  • 重慶政府是指什么廣州網(wǎng)站運營專業(yè)樂云seo
  • 大連模版網(wǎng)站seo服務(wù)優(yōu)化
  • wordpress插件小蜜蜂seo的形式有哪些
  • 給網(wǎng)站做排名優(yōu)化學(xué)什么好處百度數(shù)據(jù)查詢
  • 免費建網(wǎng)站域名新聞頭條新聞
  • wordpress 后臺列表惠東seo公司
  • 有哪些網(wǎng)站結(jié)構(gòu)是不合理的企業(yè)網(wǎng)站注冊
  • 寧波網(wǎng)站建設(shè)使用技巧分享陜西seo優(yōu)化
  • 做分析圖用的地圖網(wǎng)站免費創(chuàng)建網(wǎng)站的平臺
  • 網(wǎng)站開發(fā)公司加盟seo資料網(wǎng)
  • 大淘客網(wǎng)站如何做制作常用的網(wǎng)絡(luò)推廣手段有哪些