From e55f2e12bd95ee54a2ef1dfad474c139b6c85337 Mon Sep 17 00:00:00 2001 From: xfy Date: Fri, 3 Jul 2026 10:16:13 +0800 Subject: [PATCH] =?UTF-8?q?refactor(admin/posts):=20=E9=87=8D=E5=BB=BA?= =?UTF-8?q?=E6=8C=89=E9=92=AE=E6=96=87=E6=A1=88=E6=94=B9=E3=80=8C=E9=87=8D?= =?UTF-8?q?=E5=BB=BA=E3=80=8D=E5=B9=B6=E5=8E=BB=E6=8E=89=E5=AE=8C=E6=88=90?= =?UTF-8?q?=E5=BC=B9=E7=AA=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 按钮态文案与原有一致(「重建中...」);on_rebuild 改为静默执行, 仅按行切换 rebuilding 按钮态,完成后不再弹浏览器 alert。 --- src/pages/admin/posts.rs | 24 ++++-------------------- 1 file changed, 4 insertions(+), 20 deletions(-) diff --git a/src/pages/admin/posts.rs b/src/pages/admin/posts.rs index 6c96e34..f1d71c7 100644 --- a/src/pages/admin/posts.rs +++ b/src/pages/admin/posts.rs @@ -151,28 +151,12 @@ pub fn PostsPage(page: i32) -> Element { deleting.set(None); }); }, - // 重建单篇文章内容:调用 server function 重新渲染 content_html, - // 成功/失败均弹出浏览器提示(与删除一致的非乐观反馈)。 + // 重建单篇文章内容:调用 server function 重新渲染 content_html。 + // 静默执行,仅按行切换 rebuilding 按钮态,不弹窗。 on_rebuild: move |id| { rebuilding.set(Some(id)); spawn(async move { - match rebuild_post_content_html(id).await { - Ok(CreatePostResponse { success: true, .. }) => { - #[cfg(target_arch = "wasm32")] - web_sys::window() - .map(|w| w.alert_with_message("重建成功").ok()); - } - Ok(CreatePostResponse { success: false, message: _message, .. }) => { - #[cfg(target_arch = "wasm32")] - web_sys::window() - .map(|w| w.alert_with_message(&_message).ok()); - } - Err(_e) => { - #[cfg(target_arch = "wasm32")] - web_sys::window() - .map(|w| w.alert_with_message("重建失败").ok()); - } - } + let _ = rebuild_post_content_html(id).await; rebuilding.set(None); }); }, @@ -324,7 +308,7 @@ fn PostRow( if rebuilding { "重建中..." } else { - "重建内容" + "重建" } } button {