Files
Heyue_test/frontend/vite.config.ts

59 lines
1.3 KiB
TypeScript
Raw Normal View History

import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react'
// https://vite.dev/config/
export default defineConfig({
plugins: [react()],
server: {
port: 50001,
host: '0.0.0.0',
strictPort: true,
allowedHosts: ['maxfight.vip', 'localhost', '127.0.0.1'],
},
// 优化依赖预构建
optimizeDeps: {
include: [
'wagmi',
'viem',
'viem/actions',
'viem/chains',
'@tanstack/react-query',
'react',
'react-dom',
'react-i18next',
'i18next',
],
// 强制预构建这些依赖,避免动态导入问题
esbuildOptions: {
target: 'esnext',
},
},
// 解析配置
resolve: {
alias: {
// 解决 viem 动态导入问题
},
},
build: {
rollupOptions: {
output: {
manualChunks: {
// React 相关
'react-vendor': ['react', 'react-dom'],
// Web3 相关
'web3-vendor': ['wagmi', 'viem', '@tanstack/react-query'],
// WalletConnect 相关
'walletconnect': [
'@web3modal/wagmi',
'@walletconnect/ethereum-provider',
],
// i18n
'i18n': ['react-i18next', 'i18next', 'i18next-browser-languagedetector'],
},
},
},
// 提高 chunk 大小警告阈值
chunkSizeWarningLimit: 600,
},
})