ant-design-vue:導出excel表后報錯:[Script Loader] ReferenceError: require is not defined解決


使用網上的通用插件搭建腳手架cli4時完全按照官網文檔卻一致報錯:

[Script Loader] ReferenceError: require is not defined
at eval (eval at module.exports (addScript.js?436f:27), <anonymous>:1:1)。。。

這個報錯是只要一刷新頁面就會有

查詢了網上各種資料和分析后(網上資料說這個的不多)分析應該是require 瀏覽器不能識別的原因,因為並不影響正常使用,雖然刷新頁面和初始化都會報這個錯誤,但是只要導出都是正常的導出的數據也沒有影響

長時間調試還是覺得報錯很礙眼,方案一:下載兼容require的插件,並配置即可

方案二,直接改插件源碼:(不是cnpm里的插件,而是下載下來的export2Excel.js)

在export2Excel.js內只要改動頭部一行源碼即可

改之前:
/* eslint-disable */
require('script-loader!file-saver');//保存文件用
require('script-loader!@/excel/Blob');//轉二進制用
// require('./Blob');//轉二進制用
require('script-loader!xlsx/dist/xlsx.core.min');//xlsx核心
...
改成:
/* eslint-disable */
require('script-loader!file-saver');//保存文件用
// require('script-loader!@/excel/Blob');//轉二進制用
require('./Blob');//轉二進制用
require('script-loader!xlsx/dist/xlsx.core.min');//xlsx核心

問題解決了,頁面刷新和重繪不再報錯

解決后:

 

請注意,我這邊用的是vue-cli4 腳手架,是沒有網上很多教程里的“在webpack.base.conf.js 里面增加resolve下一行代碼
‘vendor’: path.resolve(__dirname, ‘…/src/vendor’),//新增加一行” 這樣的操作的

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM