From 38425e23f699b509cdd50fdd2b8b2a526f016ee9 Mon Sep 17 00:00:00 2001 From: xiaoxixi Date: Sun, 26 Apr 2026 21:40:34 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E6=9E=84:=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E7=BB=88=E7=AB=AF=E5=88=9D=E5=A7=8B=E5=8C=96=E5=92=8C=E6=B8=85?= =?UTF-8?q?=E7=90=86=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/mod.rs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/client/mod.rs b/src/client/mod.rs index 16d2402..3d770bc 100644 --- a/src/client/mod.rs +++ b/src/client/mod.rs @@ -25,17 +25,20 @@ pub async fn run(gateway_url: &str) -> Result<(), Box> { app.ws_sender = Some(ws_sender); app.ws_receiver = Some(ws_receiver); + // 初始化终端 enable_raw_mode()?; let mut stdout = io::stdout(); execute!(stdout, EnterAlternateScreen)?; let backend = CrosstermBackend::new(stdout); let mut terminal = Terminal::new(backend)?; + terminal.clear()?; let result = run_app(&mut terminal, app).await; - disable_raw_mode()?; - execute!(terminal.backend_mut(), LeaveAlternateScreen)?; - terminal.show_cursor()?; + // 清理终端 - 确保正确的顺序,忽略错误 + let _ = execute!(terminal.backend_mut(), LeaveAlternateScreen); + let _ = disable_raw_mode(); + let _ = terminal.show_cursor(); result }