import { resolve } from 'path' import { defineConfig, externalizeDepsPlugin } from 'electron-vite' import react from '@vitejs/plugin-react'
import tailwindcss from '@tailwindcss/vite' import { compression } from 'vite-plugin-compression2' import svgr from 'vite-plugin-svgr'
export default defineConfig({ main: { plugins: [externalizeDepsPlugin()] }, preload: { plugins: [externalizeDepsPlugin()] }, renderer: { resolve: { alias: { '@': resolve('src/renderer/src') } }, plugins: [react(), svgr({ include: '**/*.svg' }), compression(), tailwindcss()], server: { host: '0.0.0.0', port: 9000, proxy: { '/api': { // target: 'http://localhost:3000', target: 'http://192.168.9.176:3000/' } }, hmr: { overlay: true } }, css: { preprocessorOptions: { less: { javascriptEnabled: true } } } } }) // import tailwindcss from '@tailwindcss/vite'; // import react from '@vitejs/plugin-react'; // import { defineConfig } from 'vite'; // import { compression } from 'vite-plugin-compression2'; // import svgr from 'vite-plugin-svgr';
// https://vitejs.dev/config/ // export default defineConfig({ // resolve: { alias: [{ find: '@', replacement: '/src' }] }, // plugins: [react(), svgr({ include: '**/*.svg' }), compression(), tailwindcss()], // server: { // host: '0.0.0.0', // port: 9000, // proxy: { // '/api': { // // target: 'http://localhost:3000', // target: 'http://192.168.9.176:3000/', // }, // }, // hmr: { overlay: true }, // }, // css: { preprocessorOptions: { less: { javascriptEnabled: true } } }, // build: { // outDir: 'dist', // rollupOptions: { // output: { // chunkFileNames: 'js/[name]-[hash].js', // 引入文件名的名称 // entryFileNames: 'js/[name]-[hash].js', // 包的入口文件名称 // assetFileNames: '[ext]/[name]-[hash].[ext]', // 资源文件像 字体,图片等 // manualChunks(id) { // if (id.includes('node_modules')) { // return id.toString().split('node_modules/')[1].split('/')[0].toString(); // } // }, // }, // }, // }, // });
{ "name": "my-app", "version": "1.0.0", "description": "An Electron application with React and TypeScript", "main": "./out/main/index.js", "author": "example.com", "homepage": "https://electron-vite.org", "scripts": { "format": "prettier --write .", "lint": "eslint --cache .", "typecheck:node": "tsc --noEmit -p tsconfig.node.json --composite false", "typecheck:web": "tsc --noEmit -p tsconfig.web.json --composite false", "typecheck": "", "start": "electron-vite preview", "dev": "electron-vite dev --noSandbox", "build": "npm run typecheck && electron-vite build", "postinstall": "electron-builder install-app-deps", "build:unpack": "npm run build && electron-builder --dir", "build:win": "npm run build && electron-builder --win", "build:mac": "electron-vite build && electron-builder --mac", "build:linux": "electron-vite build && electron-builder --linux" }, "dependencies": { "@ant-design/charts": "^2.2.4", "@ant-design/icons": "^4.8.3", "@ant-design/pro-components": "^2.7.19", "@electron-toolkit/preload": "^3.0.1", "@electron-toolkit/utils": "^4.0.0", "@monaco-editor/react": "^4.6.0", "@redux-devtools/extension": "^3.3.0", "@reduxjs/toolkit": "^2.3.0", "@tailwindcss/vite": "^4.0.9", "ahooks": "^3.8.1", "antd": "^5.21.2", "antd-style": "^3.7.0", "axios": "^1.7.7", "classnames": "^2.5.1", "dayjs": "^1.11.13", "electron-updater": "^6.3.9", "i18next": "^23.16.4", "i18next-browser-languagedetector": "^8.0.0", "i18next-http-backend": "^2.6.2", "immer": "^10.1.1", "lodash-es": "^4.17.21", "nanoid": "^3.3.7", "normalize.css": "^8.0.1", "nprogress": "^1.0.0-1", "qs": "^6.13.0", "tailwindcss": "^4.0.9", "zustand": "^5.0.0" }, "devDependencies": { "@antfu/eslint-config": "^4.1.1", "@electron-toolkit/eslint-config-prettier": "^3.0.0", "@electron-toolkit/eslint-config-ts": "^3.0.0", "@electron-toolkit/tsconfig": "^1.0.1", "@eslint-react/eslint-plugin": "^1.19.0", "@types/lodash-es": "^4.17.12", "@types/node": "^22.13.13", "@types/qs": "^6.9.16", "@types/react": "^18.3.18", "@types/react-dom": "^18.3.5", "@umijs/openapi": "^1.13.0", "@vitejs/plugin-react": "^4.3.4", "cross-env": "^7.0.3", "electron": "^35.0.3", "electron-builder": "^25.1.8", "electron-vite": "^3.1.0", "eslint": "^9.23.0", "eslint-plugin-format": "^0.1.2", "eslint-plugin-react": "^7.37.4", "eslint-plugin-react-hooks": "^5.2.0", "eslint-plugin-react-refresh": "^0.4.19", "less": "^4.2.2", "prettier": "^3.5.3", "typescript": "^5.8.2", "react": "^18.3.1", "react-dom": "^18.3.1", "react-i18next": "^15.1.0", "react-redux": "^9.1.2", "react-router-dom": "^6.27.0", "react-sticky-box": "^2.0.5", "vite": "^6.2.3", "vite-plugin-compression2": "^1.3.0", "vite-plugin-svgr": "^4.2.0" } }