修复 Electron 应用窗口不显示的问题
- 修正 Electron 依赖版本为 28.0.0(解决安装问题) - 更新 package.json 中的启动脚本,改进并发命令执行 - 修正主进程入口文件路径配置 - 调整 TypeScript 编译配置的根目录设置 - 添加 Windows 开发环境启动脚本 start-dev.bat - 更新 .gitignore 排除编译产物和锁文件 问题原因:pnpm 默认阻止了 Electron 安装脚本执行,导致应用无法正常启动
This commit is contained in:
5
.gitignore
vendored
5
.gitignore
vendored
@@ -4,4 +4,7 @@ release/
|
||||
.DS_Store
|
||||
*.log
|
||||
.env
|
||||
.env.local
|
||||
.env.local
|
||||
*.tsbuildinfo
|
||||
.npmrc
|
||||
pnpm-lock.yaml
|
||||
10
package.json
10
package.json
@@ -2,10 +2,12 @@
|
||||
"name": "cc-switch",
|
||||
"version": "1.0.0",
|
||||
"description": "Claude Code 供应商切换工具",
|
||||
"main": "dist/main.js",
|
||||
"main": "dist/main/index.js",
|
||||
"scripts": {
|
||||
"dev": "concurrently \"npm run dev:main\" \"npm run dev:renderer\"",
|
||||
"dev:main": "tsc -w -p tsconfig.main.json",
|
||||
"dev": "concurrently -k \"npm:dev:renderer\" \"npm:dev:electron:watch\"",
|
||||
"dev:electron": "tsc -p tsconfig.main.json && electron .",
|
||||
"dev:electron:watch": "tsc -p tsconfig.main.json && concurrently -k \"tsc -w -p tsconfig.main.json\" \"npm:electron\"",
|
||||
"electron": "electron .",
|
||||
"dev:renderer": "vite",
|
||||
"build": "npm run build:renderer && npm run build:main",
|
||||
"build:main": "tsc -p tsconfig.main.json",
|
||||
@@ -22,7 +24,7 @@
|
||||
"@types/react-dom": "^18.2.0",
|
||||
"@vitejs/plugin-react": "^4.2.0",
|
||||
"concurrently": "^8.2.0",
|
||||
"electron": "^28.0.0",
|
||||
"electron": "28.0.0",
|
||||
"electron-builder": "^24.0.0",
|
||||
"typescript": "^5.3.0",
|
||||
"vite": "^5.0.0"
|
||||
|
||||
@@ -13,7 +13,7 @@ function createWindow() {
|
||||
width: 800,
|
||||
height: 600,
|
||||
webPreferences: {
|
||||
preload: path.join(__dirname, 'preload.js'),
|
||||
preload: path.join(__dirname, '../main/preload.js'),
|
||||
contextIsolation: true,
|
||||
nodeIntegration: false
|
||||
},
|
||||
@@ -72,6 +72,13 @@ ipcMain.handle('deleteProvider', (_, id: string) => {
|
||||
return true
|
||||
})
|
||||
|
||||
ipcMain.handle('updateProvider', (_, provider: Provider) => {
|
||||
const providers = store.get('providers', {})
|
||||
providers[provider.id] = provider
|
||||
store.set('providers', providers)
|
||||
return true
|
||||
})
|
||||
|
||||
ipcMain.handle('checkStatus', async (_, provider: Provider) => {
|
||||
return await checkProviderStatus(provider)
|
||||
})
|
||||
|
||||
15
start-dev.bat
Normal file
15
start-dev.bat
Normal file
@@ -0,0 +1,15 @@
|
||||
@echo off
|
||||
echo Starting CC Switch Development Server...
|
||||
echo.
|
||||
|
||||
echo [1/2] Starting Vite dev server...
|
||||
start /B cmd /c "pnpm run dev:renderer"
|
||||
|
||||
echo [2/2] Waiting for Vite to start...
|
||||
timeout /t 5 /nobreak > nul
|
||||
|
||||
echo Starting Electron...
|
||||
pnpm run dev:electron
|
||||
|
||||
echo.
|
||||
echo Development server started!
|
||||
@@ -2,7 +2,7 @@
|
||||
"extends": "./tsconfig.node.json",
|
||||
"compilerOptions": {
|
||||
"outDir": "dist",
|
||||
"rootDir": "src/main",
|
||||
"rootDir": "src",
|
||||
"types": ["node"]
|
||||
},
|
||||
"include": ["src/main/**/*", "src/shared/**/*"]
|
||||
|
||||
Reference in New Issue
Block a user