Advertisement
deedspool

Untitled

Mar 9th, 2023
569
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import { defineConfig, loadEnv } from 'vite'
  2. import react from '@vitejs/plugin-react'
  3. import { viteMockServe } from 'vite-plugin-mock'
  4. import html from 'vite-plugin-html'
  5. import * as path from 'path'
  6. import legacy from '@vitejs/plugin-legacy'
  7.  
  8. // https://vitejs.dev/config/
  9. export default defineConfig(({mode}) => {
  10.   const env = loadEnv(mode, process.cwd())
  11.   return {
  12.     //base: mode === 'production' ? `${env.VITE_BASE_URL}${env.VITE_APP_PROJECT_NAME}/`: env.VITE_BASE_URL,
  13.     resolve: {
  14.       alias: {
  15.         '@':  path.resolve(__dirname, 'src'),
  16.         //'@ui': path.resolve(__dirname, 'src/components/common')
  17.       }
  18.     },
  19.     css: {
  20.       preprocessorOptions: {
  21.         scss: { // scss config
  22.           charset: false
  23.         }
  24.       }
  25.     },
  26.     plugins: [
  27.       react(),
  28.       viteMockServe({
  29.         mockPath: 'mock',
  30.         supportTs: false
  31.       }),
  32.       html({
  33.         inject: {
  34.           data: {
  35.             title: env.VITE_APP_PAGE_NAME,
  36.             gtag: env.VITE_APP_GA_ID
  37.           }
  38.         },
  39.         minify: {
  40.           removeAttributeQuotes: false
  41.         }
  42.       }),
  43.       legacy(),
  44.     ],  
  45.     // server: {
  46.     //   port: 3001
  47.     // },
  48.     build: {
  49.       target: 'es2015', // esbuild target
  50.       assetsInlineLimit: 0, // source size limit
  51.       terserOptions: {
  52.         compress: {
  53.           drop_console: true,
  54.           drop_debugger: true,
  55.         }
  56.       },
  57.       // rollupOptions: {
  58.       //   output: {
  59.       //     chunkFileNames: '[name]-[hash].js',
  60.       //     entryFileNames: '[name]-[hash].js',
  61.       //     assetFileNames: (assetInfo) => {
  62.       //       if (/\.css$/.test(assetInfo.name)) { // output css files to css directory
  63.       //         return '[ext]/[name]-[hash].[ext]'
  64.       //       }
  65.       //       if (/\.(jpg|png|gif|jpeg|svg)$/.test(assetInfo.name)) { // output image files to images
  66.       //         return 'images/[name].[ext]'
  67.       //       }
  68.       //       return '[name]-[hash].[ext]'
  69.       //     }
  70.       //   }
  71.       // }
  72.     }
  73.   }
  74. })
  75.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement