vue3項目vite.config.js配置代理、端口、打包名以及圖片壓縮
前言
我們在搭建vue3項目的時候不可避免的會遇到“代理”、“端口”、“打包名”、“圖片壓縮”等配置問題,本文逐一講述該怎么樣在vite.config.js中去配置。
一、配置代理端口和代理轉(zhuǎn)發(fā)
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
export default defineConfig({
server: {
host: 'localhost',
port: 8080, // 端口
proxy: {
'/api': { // 請求接口中要替換的標識
target: 'http://117.62.22.235:17009', // 代理地址
changeOrigin: true, // 是否允許跨域
secure: true,
rewrite: (path) => path.replace(/^\/api/, '') // api標志替換為''
}
}
},
plugins: [vue()]
})二、修改打包名
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
export default defineConfig({
plugins: [vue()],
build: {
outDir: 'distBigScreenBase' // 打包文件的輸出目錄
}
})
三、使用@
vite.config.ts添加如下代碼
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { resolve } from "path";
export default defineConfig({
plugins: [vue()],
resolve: {
alias: {
'@': resolve(__dirname, './src')
}
}
})ts.config.json添加如下代碼
{
"compilerOptions": {
"paths": {
"@/*": ["src/*"]
}
}
}四、圖片壓縮
圖片壓縮先要引入vite-plugin-imagemin插件
命令:npm i vite-plugin-imagemin -D
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import viteImagemin from 'vite-plugin-imagemin'
export default defineConfig({
plugins: [vue(),
// 圖片壓縮
viteImagemin({
gifsicle: {
optimizationLevel: 7,
interlaced: false
},
optipng: {
optimizationLevel: 7
},
mozjpeg: {
quality: 20
},
pngquant: {
quality: [0.8, 0.9],
speed: 4
},
svgo: {
plugins: [
{
name: 'removeViewBox'
},
{
name: 'removeEmptyAttrs',
active: false
}
]
}
})
]
})五、完整代碼
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { resolve } from "path";
import viteImagemin from 'vite-plugin-imagemin'
export default defineConfig({
server: {
host: 'localhost',
port: 8080,
proxy: {
'/api': { // 請求接口中要替換的標識
target: 'http://117.62.22.235:17009', // 代理地址
changeOrigin: true, // 是否允許跨域
secure: true,
rewrite: (path) => path.replace(/^\/api/, '')
}
}
},
plugins: [vue(),
// 圖片壓縮
viteImagemin({
gifsicle: {
optimizationLevel: 7,
interlaced: false
},
optipng: {
optimizationLevel: 7
},
mozjpeg: {
quality: 20
},
pngquant: {
quality: [0.8, 0.9],
speed: 4
},
svgo: {
plugins: [
{
name: 'removeViewBox'
},
{
name: 'removeEmptyAttrs',
active: false
}
]
}
})
],
build: {
outDir: 'distBigScreenBase' // 打包文件的輸出目錄
},
resolve: {
alias: {
'@': resolve(__dirname, './src')
}
}
})
總結(jié)
vue3的配置和vue2有所不同,不能照搬照套vue2,那樣會報錯。代碼可以直接copy,親測有效,只需要修改成自己想要的文件名、路徑即可。
到此這篇關(guān)于vue3項目vite.config.js配置代理、端口、打包名以及圖片壓縮的文章就介紹到這了,更多相關(guān)vue3項目vite.config.js配置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Vue路由跳轉(zhuǎn)傳參后無法清空地址欄參數(shù)問題解決方案
這篇文章主要介紹了Vue路由跳轉(zhuǎn)傳參后無法清空地址欄參數(shù)問題解決方案,本文給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧2025-05-05
vue中watch和computed的區(qū)別與使用方法
這篇文章主要給大家介紹了關(guān)于vue中watch和computed的區(qū)別與使用方法的相關(guān)資料,文中通過實例代碼結(jié)束的非常詳細,對大家學習或者使用Vue具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧2020-08-08
js/vue如何實現(xiàn)函數(shù)(方法)當做參數(shù)傳遞
這篇文章主要介紹了js/vue實現(xiàn)函數(shù)(方法)當做參數(shù)傳遞方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2026-03-03

