Skip to main content

HydrationScriptsWithPreload

Function HydrationScriptsWithPreload 

Source
fn HydrationScriptsWithPreload(
    props: HydrationScriptsWithPreloadProps,
) -> impl IntoView
Expand description

水合脚本,只为当前路由预载 WASM 分包。

HydrationScripts 把分包清单放进上下文,leptos_integration_utils 据此为 SSR 期间调用过的 每个 lazy fn 展开清单里的全部分包 <link rel="preload" as="fetch">,且不去重(首页 360 余条, 含水合用不到的取数函数分包)。实测弱网下它们与 CSS 抢带宽,移动端 FCP 慢 0.5–2.5 s(见 docs/首屏性能实测-2026-10-28.md)。这里在 HydrationScripts 之后立即取走清单,改为按请求 路径只预载路由视图分包(crate::route_prefetch::route_view_names,去重)。不预载时它们要等 主包实例化、水合开始后才发出,整批多等一轮;EdgeOne 对同一客户端的并发请求大致逐个处理, 这一轮在线上要 100–200 ms。加载器 __wasm_split.*.js 在主入口的静态导入链上,单独 modulepreload。

§Required Props

  • options: [LeptosOptions]