vite打包出現(xiàn)?"default"?is?not?exported?by?"node_modules/...問(wèn)題解決辦法
項(xiàng)目場(chǎng)景:
vue3+ts+vite項(xiàng)目打包
問(wèn)題描述
// codemirror 編輯器的相關(guān)資源 import Codemirror from 'codemirror'; error during build: RollupError: "default" is not exported by "node_modules/vue/dist/vue.runtime.esm-bundler.js", imported by "node_modules/@kangc/v-md-editor/lib/codemirror-editor.js". at error (file:///D:...
原因分析:
報(bào)錯(cuò)意思是導(dǎo)入的js文件沒(méi)有默認(rèn)導(dǎo)出
解決方案:
有兩種方法
1.修改node_modoules下的文件源碼
在前面加上expoert default
export default (function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : typeof define === 'function' && define.amd ? define(factory) : (global = global || self, global.CodeMirror = factory()); }(this, (function () { 'use strict';
為這個(gè)js文件添加一個(gè)默認(rèn)導(dǎo)出
不太推薦這個(gè)方法,雖然比較簡(jiǎn)單
2.安裝@rollup/plugin-commonjs插件,vite-plugin-require-transform插件
@rollup/plugin-commonjs可以將commonjs模塊轉(zhuǎn)換層es6模塊
但只會(huì)對(duì)require生效
所以需要將導(dǎo)入改為require格式
(1)安裝插件
npm i @rollup/plugin-commonjs npm i vite-plugin-require-transform
(2)添加配置
在vite.config.ts配置中添加插件,注意commonjs()必須在上面,否則可能不生效
import { defineConfig } from 'vite'; import vue from '@vitejs/plugin-vue'; import commonjs from '@rollup/plugin-commonjs';//引入commojs import requireTransform from 'vite-plugin-require-transform';//引入require export default defineConfig({ plugins: [ commonjs() as any, //我的入口文件是ts類型,所以下面必須加上.ts$,否則在main.ts無(wú)法使用require requireTransform({ fileRegex: /.js$|.vue$|.png$|.ts$|.jpg$/ }) //配置require vue(), ], }
(3)將main.ts中的導(dǎo)入改為require
// codemirror 編輯器的相關(guān)資源 const Codemirror = require('codemirror');
總結(jié)
到此這篇關(guān)于vite打包出現(xiàn) "default" is not exported by "node_modules/...問(wèn)題解決辦法的文章就介紹到這了,更多相關(guān)vite打包default is not exported by node_modules/...內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 解決vite build打包后頁(yè)面不能正常訪問(wèn)的情況
- vue3+ts+vite打包后靜態(tài)資源404無(wú)法加載js和css問(wèn)題解決辦法
- vite打包只生成了一個(gè)css和js文件問(wèn)題的解決方法
- 關(guān)于vite+vue3打包部署問(wèn)題
- vite打包優(yōu)化分片打包依賴包詳解
- Vue3在history模式下如何通過(guò)vite打包部署白屏
- 解決vite打包后白屏之router-view不生效問(wèn)題
- VUE3?Vite打包后動(dòng)態(tài)圖片資源不顯示問(wèn)題解決方法
- vite分目錄打包及去掉默認(rèn)的.gz?文件的操作方法
- VUE3項(xiàng)目VITE打包優(yōu)化的實(shí)現(xiàn)
- Vite中Rollup打包的實(shí)現(xiàn)
相關(guān)文章
Vue監(jiān)聽(tīng)localstorage變化的方法詳解
在日常開(kāi)發(fā)中,我們經(jīng)常使用localStorage來(lái)存儲(chǔ)一些變量,這些變量會(huì)存儲(chǔ)在瀏覽中,對(duì)于localStorage來(lái)說(shuō),即使關(guān)閉瀏覽器,這些變量依然存儲(chǔ)著,方便我們開(kāi)發(fā)的時(shí)候在別的地方使用,本文就給大家介紹Vue如何監(jiān)聽(tīng)localstorage的變化,需要的朋友可以參考下2023-10-10vue實(shí)現(xiàn)表單未編輯或未保存離開(kāi)彈窗提示功能
這篇文章主要介紹了vue實(shí)現(xiàn)表單未編輯或未保存離開(kāi)彈窗提示功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04vue+elemen實(shí)現(xiàn)el-tooltip在文本超出區(qū)域后浮現(xiàn)
el-tooltip組件本身就是懸浮提示功能,在對(duì)它進(jìn)行二次封裝時(shí),實(shí)現(xiàn)超出的文本浮現(xiàn),本文就來(lái)介紹一下vue+elemen實(shí)現(xiàn)el-tooltip在文本超出區(qū)域后浮現(xiàn),感興趣的可以了解一下2023-12-12