该配置是包含了打包配置,根目录设置,静态文件别名设置,打包环境去掉console.log 组件按需引入,配置mock,以及使用,跨域,按需引入,gzip压缩
线上
1.vite打包路径,打包之前是绝对定位,打包之后是相对路由,在vite.config里面配置base:”./“,如果不配置的话本地访问不到
设置根目录
使用必须先下载node的声明文件 yarn add --dev @types/node import { resolve } from "path"; resolve: {     //设置别名     alias: {       "@": resolve(__dirname, 'src')     }   },
   | 
 
静态资源设置别名 “/icon”: “./src/assets”,

打包环境去掉打印console.log
1.先安装  npm i terser --legacy--peer-deps 2.然后配置打包配置
   | 
 

组件库按需引入
打包前是800多kb,打包后是100多
1.npm install -D unplugin-vue-components unplugin-auto-import 2.在vite.config.引入 import AutoImport from 'unplugin-auto-import/vite' import Components from 'unplugin-vue-components/vite' 3.AutoImport({       resolvers: [ElementPlusResolver()],     }),     Components({       resolvers: [ElementPlusResolver()],     }),
   | 
 

安装mock
1.简介

1.安装   
yarn add mockjs vite-plugin-mock@2.9.6 -D
   | 
 
2.vite.config.ts中
import { viteMockServe } from "vite-plugin-mock"; viteMockServe({       // default       mockPath: "mock",     }),
  | 
 

3.创建文件mock   mock文件夹一定要放在src外面
// test.ts
  import { MockMethod } from "vite-plugin-mock"; import { mock } from "mockjs"; var data = mock({   "list|100": [     {       goods: "小米",       price: 3000,     },   ], }); export default [   {     url: "/api/get",     method: "get",     response: ({ query }) => {       return {         code: 0,         data,       };     },   }, ] as MockMethod[];
 
   | 
 
4.组件中使用
import axios from "axios"; async function fn() {   const { data } = await axios.get("/api/get");   console.log(data); } fn();
   | 
 
跨域vite.config.ts中
server: {    // 配置服务器代理,实现跨域    proxy: {      //所有以 '/api'为前缀的接口都转向http://localhost:8000      //  // http://127.0.0.1:5173/api/user      //  // http://localhost:8000/api/user      //  // http://localhost:8000/user      "/api": {        target: "http://localhost:8000",        changeOrigin: true,        //去掉接口中的 '/api'以便和后端接口匹配        rewrite: (path) => path.replace(/^\/api/, ""),      },    },  },
  | 
 
env环境变量
1.定义两个文件夹 .env.development  //生产阶段 VITE_BASE_API=/api/get  //线下接口数据 .env.production   //线上 VITE_BASE_API=www.baidu.com  //线上接口数据
   | 
 
使用cdn按需引入
1.安装 npm install vite-plugin-cdn-import --save-dev 2.安装 $ npm install element-plus --save 3.vite.config.ts中引入 import { autoComplete, Plugin as importToCDN } from "vite-plugin-cdn-import";  importToCDN({       modules: [         {           name: "vue",           var: "Vue",           path: `https://unpkg.com/vue@next`,         },         {           name: "element-plus",           var: "ElementPlus",           path: `https://unpkg.com/element-plus`,           css: "https://unpkg.com/element-plus/dist/index.css",         },       ],     }),
   | 
 

没使用之前

使用后

压缩代码gzip
1.安装
npm i vite-plugin-compression -D
   | 
 
2.引入
import viteCompression from "vite-plugin-compression";
 
   | 
 
3.配置
