#structs #macro #js-value #convert #js-values #serde-wasm-bindgen

rs2js

一个将 Rust 结构体转换为/从 JsValues 的宏

5 个版本

0.2.3 2023年6月13日
0.2.2 2023年6月13日
0.2.1 2023年6月13日
0.2.0 2023年5月2日
0.1.0 2023年5月2日

#2 in #js-value

27 个月下载量

MIT/Apache

3KB

Rs2Js: 从 Rust 到 JsValue 及其反向转换

使用方法

#[derive(Rs2Js, Debug, Clone, PartialEq)]
pub struct DbProject {
    pub name: String,
    pub owner_id: String,
    pub created: Timestamp,
}
fn main() {
    let proj = DbProject { .. };
    let value = proj.to_js(); // JsValue
}

动机

这主要是因为 serde-wasm-bindgen 目前不支持通过 JsValues 传递 (查看此问题)。

依赖项

~1.4–2.3MB
~41K SLoC