skip_typescript
默认情况下,Rust 导出到 JavaScript 的内容将生成 TypeScript 定义(除非使用 `--no-typescript`)。`skip_typescript` 属性可用于禁用每个函数、枚举、结构体或字段的类型生成。例如
#![allow(unused)] fn main() { #[wasm_bindgen(skip_typescript)] pub enum MyHiddenEnum { One, Two, Three } #[wasm_bindgen] pub struct MyPoint { pub x: u32, #[wasm_bindgen(skip_typescript)] pub y: u32, } #[wasm_bindgen] impl MyPoint { #[wasm_bindgen(skip_typescript)] pub fn stringify(&self) -> String { format!("({}, {})", self.x, self.y) } } }
将生成以下 `.d.ts` 文件
/* tslint:disable */
/* eslint-disable */
export class MyPoint {
free(): void;
x: number;
}
与 `typescript_custom_section` 属性 结合使用时,这可用于手动指定更具体的函数类型,而不是使用生成的定义。