vite.config.ts 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import { defineConfig } from 'vite'
  2. import react from '@vitejs/plugin-react-swc'
  3. import tailwindcss from '@tailwindcss/vite'
  4. import { progressTrackingPlugin } from 'vite-progress-tracking-plugin';
  5. import iframeCommunicationPlugin from 'vite-plugin-iframe-communicator';
  6. // https://vite.dev/config/
  7. export default defineConfig({
  8. plugins: [
  9. react({
  10. tsDecorators: true,
  11. }),
  12. tailwindcss(),
  13. progressTrackingPlugin(),
  14. iframeCommunicationPlugin({
  15. hostOrigin: '*', // 可信的主页面源
  16. })
  17. ],
  18. server: {
  19. allowedHosts:true,
  20. watch: {
  21. // 忽略指定目录,使用 glob 模式
  22. ignored: [
  23. '**/node_modules/**', // Vite 默认已忽略 node_modules
  24. '**/dist/**', // 忽略 dist 目录
  25. 'coverage/**',
  26. 'playwright-report/**',
  27. 'test-results/**',
  28. 'tests/**',
  29. ]
  30. }
  31. },
  32. // 配置 @ 别名
  33. resolve: {
  34. alias: {
  35. '@': '/src',
  36. },
  37. },
  38. // 构建配置
  39. build: {
  40. // 对于SSR,我们不需要默认的index.html入口
  41. // 为客户端构建指定JS入口文件
  42. rollupOptions: {
  43. input: {
  44. // 这里指定你的客户端入口JS文件
  45. main: 'src/client/index.tsx',
  46. styles: 'src/style.css',
  47. },
  48. },
  49. },
  50. })