vite.config.js 1 KB
const { defineConfig } = require('vite');
const process = require('process');
import { viteExternalsPlugin } from 'vite-plugin-externals';
const path = require('path');
const { cwd } = require('process');

module.exports = defineConfig({
  server: {
    proxy: path.resolve(cwd(), './proxy'),
  },
  define: {
    // By default, Vite doesn't include shims for NodeJS/
    // necessary for segment analytics lib to work
    global: {},
    'process.env': process.env,
  },
  resolve: {
    extensions: ['.json', '.jsx', '.js', '.ts', '.tsx'],
    alias: {
      '@': path.resolve(cwd, './src/'),
      '@/src': path.resolve(cwd, './src/'),
      '~@qx': path.resolve(cwd, './node_modules/@qx'),
    },
  },
  css: {
    preprocessorOptions: {
      less: {
        javascriptEnabled: true,
        additionalData: `@import '@/styles/variable.less';`,
      },
    },
  },
  plugins: [
    new viteExternalsPlugin({
      react: 'React',
      'react-dom': 'ReactDOM',
      dayjs: 'dayjs',
      antd: 'antd',
    }),
  ],
});