skip_typescript
預設情況下,暴露給 JavaScript 的 Rust 導出會產生 TypeScript 定義 (除非使用 --no-typescript
)。 skip_typescript
屬性可用於禁用每個函式、列舉、結構或欄位的型別生成。例如
# #![allow(unused_variables)] #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
屬性結合使用時,這可用於手動指定更具體的函式型別,而不是使用生成的定義。