webpack轉(zhuǎn)vite的詳細(xì)操作流程與問(wèn)題總結(jié)
前言
最近在開(kāi)發(fā)一個(gè)超級(jí)大的管理端項(xiàng)目,每次啟動(dòng)都要在8、9分鐘,熱更新一次也需要40秒,十分折磨,試過(guò)很多提速方法,都沒(méi)有效果;周二晚上看到了vite-下一代前端開(kāi)發(fā)與構(gòu)建工具,周三上班就開(kāi)始從網(wǎng)上翻找教程,經(jīng)歷過(guò)無(wú)數(shù)bug,歷經(jīng)兩天,終于解決,特此記錄一下所有流程與踩坑經(jīng)歷
一、全局安裝wp2vite
npm install -g wp2vite
二、在項(xiàng)目中執(zhí)行一下命令
執(zhí)行之前記得安裝好依賴(lài):npm install
wp2vite --config=./vue.config.js //你的webpack配置文件
執(zhí)行完以上命令后再執(zhí)行一遍:npm install
截止這一步,主要操作搞定
三、項(xiàng)目配置操作
1、刪除原有public目錄下的index.html文件
2、修改根目錄下的index.html,引用自己的main.js文件
<script type="module" src="/src/main.ts"></script>
我的是ts,可自行修改
3、重點(diǎn):vite.config.js
①設(shè)置alias,增加絕對(duì)路徑@
let alias = { '.git': path.resolve(__dirname, './.git'), 'docker': path.resolve(__dirname, './docker'), 'docs': path.resolve(__dirname, './docs'), 'node_modules': path.resolve(__dirname, './node_modules'), 'public': path.resolve(__dirname, './public'), 'src': path.resolve(__dirname, './src'), '@': path.resolve(__dirname, 'src'), }
②設(shè)置proxy,就是你的代理
在proxy對(duì)象中添加代理
注意此時(shí)寫(xiě)法有變,將pathRewrite修改為rewrite,舉個(gè)栗子
vue.config.js
'/api': { target: `http://localhost:8180`, changeOrigin: true, ws: true, pathRewrite: { '^/api': '', }, },
vite.config.js
'/api': { target: `http://localhost:8180`, changeOrigin: true, ws: true, rewrite: (path) => path.replace(/^\/api/, '') },
4、require報(bào)錯(cuò)
如果你用到了require.context()
,請(qǐng)?zhí)鎿Q為import.meta.globEager()
,示范如下
const requires = require.context('@/modules', true, /router\.ts$/);//原有 const requires = import.meta.globEager("@/modules/*/router.ts")//修改后
5、path.resolve報(bào)錯(cuò)
先安裝依賴(lài)
npm install path-browserify --save
修改引入方式為
import path from 'path-browserify'
四、啟動(dòng)項(xiàng)目
npm run dev
五、速度比較
啟動(dòng)速度
vite
webpack
實(shí)在太慢,不想截圖了
熱更新速度
biu~bang //超級(jí)快
錄了視頻,但是要轉(zhuǎn)成gif,不想轉(zhuǎn),改vue頁(yè)面改完就能生效,都不用刷新頁(yè)面;改ts文件也是立刻生效,會(huì)自動(dòng)刷新頁(yè)面
總結(jié)
到此這篇關(guān)于webpack轉(zhuǎn)vite的詳細(xì)操作流程與問(wèn)題總結(jié)的文章就介紹到這了,更多相關(guān)webpack轉(zhuǎn)vite操作流程內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Vue3中自定義事件總線(xiàn)的實(shí)現(xiàn)代碼
隨著 Vue 3 的發(fā)布,一些在 Vue 2 中常用的通信方式在 Vue 3 中可能不再適用或有所變化,為了應(yīng)對(duì)這種變化,我們可以選擇在 Vue 3 應(yīng)用中實(shí)現(xiàn)自定義的“事件總線(xiàn)”機(jī)制,所以本文給大家介紹了Vue3中如何自定義消息總線(xiàn),需要的朋友可以參考下2024-05-05Vue如何利用flex布局實(shí)現(xiàn)TV端城市列表功能
用vue開(kāi)發(fā)了三四個(gè)組件了,都是H5的,現(xiàn)在來(lái)看看PC是如何玩轉(zhuǎn)組件的,下面這篇文章主要給大家介紹了關(guān)于Vue如何利用flex布局實(shí)現(xiàn)TV端城市列表功能的相關(guān)資料,需要的朋友可以參考下2023-01-01vue 組件中使用 transition 和 transition-group實(shí)現(xiàn)過(guò)渡動(dòng)畫(huà)
本文給大家分享一下vue 組件中使用 transition 和 transition-group 設(shè)置過(guò)渡動(dòng)畫(huà),總結(jié)來(lái)說(shuō)可分為分為 name 版, js 鉤子操作類(lèi)名版, js 鉤子操作行內(nèi)樣式版,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2019-07-07vue-cli構(gòu)建vue項(xiàng)目的步驟詳解
這篇文章主要介紹了vue-cli構(gòu)建vue項(xiàng)目的步驟詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-01-01