素材 / COMPONENT ATLAS

素材上传弹窗AssetUploadModal

图鉴只切换预置 UploadItem 状态;正式素材页仍使用 UploadPool 校验、并发上传、失败重试及完成回调。

亲手试一试。

01 / LIVE PREVIEW
● AssetUploadModal
本地演示,示例文件不会上传。

封面.webp

1.2 MB

✓ 已上传

相册-02.png

860 KB

上传中

草稿插图.jpg

420 KB

等待中

超大原图.png

8.4 MB

大小超过 5MB 限制

STATES / 示例状态

空列表排队上传中完成失败
本地演示,内容不会保存。
INTERACTIVE SPECIMEN · 跟随全站主题

用法

02 / USAGE

下方展示组件的调用方式。

RUST · DIOXUS RSX
let mut visible = use_signal(|| false);
let mut refresh = use_signal(|| 0_u32);
rsx! {
    button { onclick: move |_| visible.set(true), "上传素材" }
    AssetUploadModal {
        visible,
        on_uploaded: move |_| refresh.set(refresh().wrapping_add(1)),
    }
    // 素材列表订阅 refresh,在成功回调后重新读取。
}

主要属性

03 / PROPERTIES
属性 / 类型默认值说明
visibleSignal<bool>由调用方提供素材上传弹窗的 visible 参数。
on_uploadedEventHandler<()>由调用方提供素材上传弹窗的 on_uploaded 参数。
YGGDRASIL · 每一个细节,都有回应。src/components/assets/asset_upload.rs
© 2026 Yggdrasil