import React, { useEffect, useState } from 'react' const XCOPENCODEWEB_PORT = 3000 export const OpenCodePage: React.FC = () => { const [isRunning, setIsRunning] = useState(false) const [error, setError] = useState(null) useEffect(() => { let mounted = true const startService = async () => { try { const result = await window.electronAPI.xcOpenCodeWebStart() if (mounted) { if (result.success) { setIsRunning(true) setError(null) } else { setError(result.error || '启动失败') } } } catch (err) { if (mounted) { setError(err instanceof Error ? err.message : '启动失败') } } } startService() return () => { mounted = false window.electronAPI.xcOpenCodeWebStop() setIsRunning(false) } }, []) return (

OpenCode

{isRunning ? '运行中' : '启动中...'} {error && ( {error} )}
{isRunning && (