2 个版本
0.1.1 | 2021 年 3 月 31 日 |
---|---|
0.1.0 | 2021 年 3 月 5 日 |
#20 in #fly
每月 22 次下载
在 typescript-wasm-bindgen 中使用
20KB
411 行
typescript-wasm-bindgen
开发中,许多方面尚未实现。
直接在您的 wasm rust 应用程序中导入 TypeScript 定义。
用法
// src/index.ts
export function test(): void {
console.log("test");
}
build.rs
// build.rs
use std::path::PathBuf;
use typescript_wasm_bindgen::build_typescript_wasm_binding;
fn main() {
build_typescript_wasm_binding(&PathBuf::from("./ts/test_function.ts"), "test").unwrap();
}
// lib.rs
use typescript_wasm_bindgen::import_typescript_wasm_binding;
use wasm_bindgen::prelude::{wasm_bindgen, JsValue};
import_typescript_wasm_binding!("test_function");
proc_macro
// wasm/src/lib.rs
use typescript_wasm_bindgen::typescript;
use wasm_bindgen::prelude::wasm_bindgen;
typescript!("../src/index.ts", "index");
// `typescript!` macro expands like following:
//
// #[wasm_bindgen(module = "index")]
// extern "C" {
// fn test();
// }
示例
依赖项
~5–11MB
~125K SLoC