Vue+vite創(chuàng)建項目關(guān)于vite.config.js文件的配置方法
Vue+vite創(chuàng)建項目關(guān)于vite.config.js文件的配置
Vue項目創(chuàng)建時,我們見過vue-cli 創(chuàng)建項目和webpack 創(chuàng)建項目等方式?,F(xiàn)在Vue 3版本使用npm/pnpm create vue@latest 創(chuàng)建項目,是搭配使用vite工具構(gòu)建的。創(chuàng)建完成的項目,最明顯的去別就是,項目配置文件命名不同,當(dāng)然,配置語法也有不同。
vue-cli 創(chuàng)建的項目,項目配置文件文件名為vue.config.js,webpack 創(chuàng)建項目的項目配置文件文件名為webpack.config.js,而vite工具構(gòu)建完成的項目,項目配置文件文件名為vite.config.js
先貼一個vite官方地址:https://cn.vitejs.dev/
關(guān)于vite.config.js的配置語法:
創(chuàng)建項目之后,默認生成的vite.config.js文件比較簡單,只有簡單幾行代碼:
import { fileURLToPath, URL } from 'node:url' import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' // https://vitejs.dev/config/ export default defineConfig({ plugins: [vue()], resolve: { alias: { '@': fileURLToPath(new URL('./src', import.meta.url)) } }, })
這樣直接運行項目或者build大包代碼也基本上沒有什么問題,但是往往無法滿足我們的需要,因此需要自己手動添加屬性配置。簡單解釋:
import { fileURLToPath, URL } from 'node:url' import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' // 這里是創(chuàng)建文檔之后vite貼出的官方文檔地址 // https://vitejs.dev/config/ export default defineConfig({ // 需要用到的插件數(shù)組,這里是用vue plugins: [vue()], resolve: { // resolve.alias屬性配置文件自定義路徑。如下:設(shè)置‘@'代替‘./src' alias: { '@': fileURLToPath(new URL('./src', import.meta.url)) } }, })
根據(jù)需要添加自定義配置,比如項目運行時的配置及項目打包輸出的打包配置。
import { fileURLToPath, URL } from 'node:url' import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' // 這里是創(chuàng)建文檔之后vite貼出的官方文檔地址 // https://vitejs.dev/config/ export default defineConfig({ // 需要用到的插件數(shù)組,這里是用vue plugins: [vue()], resolve: { // resolve.alias屬性配置文件自定義路徑。如下:設(shè)置‘@'代替‘./src' alias: { '@': fileURLToPath(new URL('./src', import.meta.url)) } }, // 開發(fā)服務(wù)器配置server server: { // host指定服務(wù)器應(yīng)該監(jiān)聽哪個 IP 地址。 如果將此設(shè)置為 0.0.0.0 或者 true 將監(jiān)聽所有地址,包括局域網(wǎng)和公網(wǎng)地址。 host: true, // 開發(fā)服務(wù)器端口配置。(注意:如果配置的端口已經(jīng)被使用,Vite 會自動嘗試下一個可用的端口,要看項目運行時最終生成的端口地址。) port: '9081', // open項目運行完畢是否自動在默認瀏覽器打開 open: true, // 是否使用https,需要證書 https: false, // proxy代理配置 proxy: { '/api': { target: 'http://xxxx', changeOrigin: true, rewrite: path => path.replace(/^\/api/, '') } } }, // build打包構(gòu)建配置 build: { // 打包輸出的文件夾名稱 outDir: 'dist', // 靜態(tài)資源文件保存的文件夾名稱 assetsDir: 'static', // 是否啟用css代碼拆分 cssCodeSplit: true, // 打包構(gòu)建后是否生成 source map 文件。 sourcemap: true, // 打包構(gòu)建時壓縮混淆使用的混淆器 minify: 'esbuild', // 自定義底層的 Rollup 打包配置(Rollup文檔地址:https://cn.rollupjs.org/configuration-options/) rollupOptions: { // 輸出配置 output: { // 輸出的文件自定義命名 chunkFileNames: 'js/[name]-[hash].js', entryFileNames: 'js/[name]-[hash].js', assetFileNamesL: '[ext]/[name]-[hash].[text]' } } } })
END
當(dāng)然,還有很多配置屬性起到不同的效果,這里暫時記錄這些,有興趣的大佬可以看看官方文檔。
到此這篇關(guān)于Vue+vite創(chuàng)建項目關(guān)于vite.config.js文件的配置的文章就介紹到這了,更多相關(guān)vite.config.js文件的配置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vuex 解決報錯this.$store.commit is not a function的方法
這篇文章主要介紹了vuex 解決報錯this.$store.commit is not a function的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-12-12vue3項目typescript如何export引入(imported)的interface問題
這篇文章主要介紹了vue3項目typescript如何export引入(imported)的interface問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-06-06elementUI組件中el-date-picker限制時間范圍精確到小時的方法
現(xiàn)在需要做一個時間選擇器,可以根據(jù)小時(同時選天和小時)和天?和月,節(jié)假日等類型控制日歷的選擇樣式,下面這篇文章主要給大家介紹了關(guān)于elementUI組件中el-date-picker限制時間范圍精確到小時的相關(guān)資料,需要的朋友可以參考下2023-04-04uniapp組件uni-file-picker中對上傳的圖片進行壓縮至1兆以內(nèi)(推薦)
我在做uniapp項目時,用的uni-file-picker組件,這是我做的一個項目實例,主要是將圖片通過接口傳至后臺服務(wù)器,本文給大家分享uniapp組件uni-file-picker中對上傳的圖片進行壓縮再上傳,感興趣的朋友跟隨小編一起看看吧2022-11-11Element?UI表單驗證規(guī)則動態(tài)失效問題的解決辦法
這篇文章主要給大家介紹了關(guān)于Element?UI表單驗證規(guī)則動態(tài)失效問題的解決辦法,Element UI提供了強大的表單驗證功能,可以輕松地對表單進行驗證,需要的朋友可以參考下2023-09-09vue 自定義組件 v-model雙向綁定、 父子組件同步通信的多種寫法
父子組件通信,都是單項的,很多時候需要雙向通信。這篇文章主要介紹了vue 自定義組件 v-model雙向綁定、 父子組件同步通信,需要的朋友可以參考下2017-11-11