From 0301185a1715d635d4cc8721eacdbc3e0ff85575 Mon Sep 17 00:00:00 2001 From: xfy Date: Wed, 24 Jun 2026 11:07:24 +0800 Subject: [PATCH] refactor(post-content): drop lightbox include_str!, use config-driven init --- src/components/post/post_content.rs | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/components/post/post_content.rs b/src/components/post/post_content.rs index 75fe4e8..032640a 100644 --- a/src/components/post/post_content.rs +++ b/src/components/post/post_content.rs @@ -10,17 +10,22 @@ use dioxus::prelude::*; /// - `content_html`:服务端渲染的文章 HTML 字符串 /// /// 关键行为: -/// - 在 `target_arch = "wasm32"` 环境下执行 `post-content.js`(代码块复制)与 -/// `lightbox.js`(图片灯箱 + 懒加载),并调用各自的初始化函数。 +/// - 在 `target_arch = "wasm32"` 环境下执行 `post-content.js`(代码块复制)。 +/// 灯箱(图片灯箱 + 懒加载)改由 `Dioxus.toml` 全局注入 `lightbox.js`, +/// 这里仅设置其初始化配置 `__lightboxSelectors` 并兜底调用。 #[component] pub fn PostContent(content_html: String) -> Element { #[cfg(target_arch = "wasm32")] use_effect(move || { let _ = js_sys::eval(include_str!("../../../public/js/post-content.js")); - let _ = js_sys::eval(include_str!("../../../public/js/lightbox.js")); let _ = js_sys::eval("window.__initPostContent('.post-content')"); - // 正文图组成图集;封面(.entry-cover,带 lightbox-single class)单张模式。 - let _ = js_sys::eval("window.__initLightbox(['.post-content', '.entry-cover'])"); + // lightbox 改由 Dioxus.toml 全局