Inspire - Capo Productions
Vite 2.0 配置总结 
1 别名设置 
vite.config.js:
方式一
js
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
const { resolve } = require('path')
// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue()],
  resolve: {
    alias: {
      '@': resolve(__dirname, 'src')
    }
  }
})方式二
js
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
const { resolve } = require('path')
// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue()],
  resolve: {
    alias: [
      {
        find: '@',
        replacement: resolve(__dirname, 'src'),
      }
    ]
  }
})使用:
html
<template>
  <div>home</div>
  <pagination />
</template>
<script setup>
import Pagination from '#/components/Pagination.vue'
</script>2 配置环境变量 
在项目根目录新建文件.env.production、.env.production
.env.development
NODE_ENV=development
  
VITE_APP_WEB_URL=YOUR WEB URL.env.production
NODE_ENV=production
  
VITE_APP_WEB_URL=YOUR WEB URL命令 npm run dev 默认使用 development 模式,npm run build 默认使用 production 模式。
在页面中使用:
js
console.log(import.meta.env.VITE_APP_WEB_URL)注意:只有以 VITE_ 开头命名的变量才会暴露为 import.meta.env 的属性。
3 组件样式按需加载 
安装依赖 npm install vite-plugin-style-import -D
以 Element plus 为例
请确保已经安装了 sass 依赖并将 element-plus/packages/theme-chalk/src/base.scss 文件在入口文件中引入
vite.config.js
js
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import styleImport from 'vite-plugin-style-import'
export default defineConfig({
  plugins: [
    vue(),
    styleImport({
      libs: [{
        libraryName: 'element-plus',
        resolveStyle: (name) => {
          name = name.splice(3)
          return `element-plus/packages/theme-chalk/src/${name}.scss`;
        },
        resolveComponent: (name) => {
          return `element-plus/lib/${name}`;
        },
      }]
    })
  ]
})具体配置参考:https://github.com/anncwb/vite-plugin-style-import
4 配置开发环境代理 
vite.config.js
js
// ...
server: {
  host: '0.0.0.0',
  port: 3000,
  open: true,
  https: false,
  proxy: {}
}5 生产环境移除 console 
vite.config.js
js
// ...
build:{
  // ...
  terserOptions: {
      compress: {
        drop_console: true,
        drop_debugger: true
      }
  }
}6 生成环境生成.gz文件 
安装依赖 npm install vite-plugin-compression -D
vite.config.js
js
import viteCompression from 'vite-plugin-compression'
plugins:[
  // ...
  viteCompression({
      verbose: true,
      disable: false,
      threshold: 10240,
      algorithm: 'gzip',
      ext: '.gz'
  })
]具体配置参考:https://github.com/anncwb/vite-plugin-compression