vite.config.ts 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  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. ]
  29. }
  30. },
  31. // 配置 @ 别名
  32. resolve: {
  33. alias: {
  34. '@': '/src',
  35. },
  36. },
  37. // 构建配置
  38. build: {
  39. // 对于SSR,我们不需要默认的index.html入口
  40. // 为客户端构建指定JS入口文件
  41. rollupOptions: {
  42. input: {
  43. // 这里指定你的客户端入口JS文件
  44. main: 'src/client/index.tsx',
  45. styles: 'src/style.css',
  46. },
  47. },
  48. },
  49. })