12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- import {
- defineConfig
- } from 'vite'
- import {
- fileURLToPath,
- URL
- } from 'node:url'
- import vue from '@vitejs/plugin-vue'
- import VueSetupExtend from 'vite-plugin-vue-setup-extend'
- import AutoImport from 'unplugin-auto-import/vite'
- import Components from 'unplugin-vue-components/vite'
- import {
- ElementPlusResolver
- } from 'unplugin-vue-components/resolvers'
- import {
- createStyleImportPlugin,
- ElementPlusResolve,
- } from "vite-plugin-style-import"; // 下载 vite-plugin-style-import 如遇到 Error: Cannot find module 'consola' 因为插件的使用了 consola 包,但是我们没有安装.所以需要安装 consola
- const packageJson = require('./package.json')
- const addr = ''
- // https://vitejs.dev/config/
- // const webpack = require('webpack')
- // module.exports = {
- // // 在vue.config.js中configureWebpack中配置
- // // 要引入webpack
- // configureWebpack: {
- // plugins: [
- // new webpack.ProvidePlugin({
- // 'window.Quill': 'quill/dist/quill.js',
- // Quill: 'quill/dist/quill.js'
- // })
- // ]
- // }
- // }
- export default defineConfig(({
- mode,
- command
- }) => {
- const CONSTANTS = {
- BUILDTIME: Math.floor(Date.now() / 1000),
- VERSION: packageJson.version,
- SHOULD_REMOVE_DEBUG_INFOS: ["production"].includes(mode),
- };
- return {
- base: `${process.env.NODE_ENV === 'prod' ? addr : ''}./`,
- plugins: [
- vue(),
- VueSetupExtend(),
- // 解决element-Puls自动引入部分样式不生效问题
- createStyleImportPlugin({
- resolves: [ElementPlusResolve()],
- }),
- AutoImport({
- resolvers: [ElementPlusResolver()],
- }),
- Components({
- resolvers: [ElementPlusResolver()],
- }),
- ],
- build: {
- rollupOptions: {
- output: {
- // 打包分支创建版本号
- assetFileNames: `assets/[name].[hash].${CONSTANTS.VERSION}.[extname]`,
- chunkFileNames: `assets/[name].[hash].${CONSTANTS.VERSION}.js`,
- },
- },
- },
- esbuild: {
- drop: CONSTANTS.SHOULD_REMOVE_DEBUG_INFOS ? ["console", "debugger"] : [],
- },
- resolve: {
- alias: {
- "@": fileURLToPath(new URL("./src",
- import.meta.url)),
- },
- },
- server: {
- proxy: {
- '/api': {
- target: 'http://debugapi.mashangyl.com',
- pathRewrite: {
- '^/api': ''
- },
- changeOrigin: true,
- },
- },
- cors: true,
- }
- }
- })
|