簡介
1.
範例
1.1.
Hello, World!
1.2.
使用 console.log
1.3.
小型 Wasm 檔案
1.4.
不使用 Bundler
1.5.
同步實例化
1.6.
從 JS 匯入函式
1.7.
使用 char
1.8.
js-sys:WebAssembly 中的 WebAssembly
1.9.
web-sys:DOM hello world
1.10.
web-sys:閉包
1.11.
web-sys:performance.now
1.12.
web-sys:使用 fetch
1.13.
web-sys:天氣報告
1.14.
web-sys:canvas hello world
1.15.
web-sys:canvas Julia 集
1.16.
web-sys:WebAudio
1.17.
web-sys:WebGL
1.18.
web-sys:WebSockets
1.19.
web-sys:WebRTC DataChannel
1.20.
web-sys:requestAnimationFrame
1.21.
web-sys:簡單的繪圖程式
1.22.
web-sys:Web Worker 中的 Wasm
1.23.
平行光線追蹤
1.24.
Wasm Audio Worklet
1.25.
web-sys:TODO MVC 應用程式
2.
參考
2.1.
部署
2.2.
JS 片段
2.3.
靜態 JS 物件
2.4.
將 Rust 閉包傳遞給 JS
2.5.
在 Rust 中接收 JS 閉包
2.6.
Promise 和 Future
2.7.
迭代 JS 值
2.8.
使用 Serde 的任意資料
2.9.
存取未型別 JS 值的屬性
2.10.
使用鴨子型別介面
2.11.
命令列介面
2.12.
最佳化大小
2.13.
支援的 Rust 目標
2.14.
支援的瀏覽器
2.15.
支援弱參考
2.16.
支援參考型別
2.17.
支援的型別
2.17.1.
匯入的 JavaScript 型別
2.17.2.
匯出的 Rust 型別
2.17.3.
JsValue
2.17.4.
Box<[T]> 和 Vec<T>
2.17.5.
*const T 和 *mut T
2.17.6.
NonNull<T>
2.17.7.
數字
2.17.8.
bool
2.17.9.
char
2.17.10.
str
2.17.11.
String
2.17.12.
數字切片
2.17.13.
Boxed 數字切片
2.17.14.
Result<T, E>
2.18.
#[wasm_bindgen] 屬性
2.18.1.
關於 JavaScript 匯入
2.18.1.1.
catch
2.18.1.2.
constructor
2.18.1.3.
extends
2.18.1.4.
getter 和 setter
2.18.1.5.
final
2.18.1.6.
indexing_getter、indexing_setter 和 indexing_deleter
2.18.1.7.
js_class = "Blah"
2.18.1.8.
js_name
2.18.1.9.
js_namespace
2.18.1.10.
method
2.18.1.11.
module = "blah"
2.18.1.12.
raw_module = "blah"
2.18.1.13.
no_deref
2.18.1.14.
static_method_of = Blah
2.18.1.15.
structural
2.18.1.16.
typescript_type
2.18.1.17.
variadic
2.18.1.18.
vendor_prefix
2.18.2.
關於 Rust 匯出
2.18.2.1.
constructor
2.18.2.2.
js_name = Blah
2.18.2.3.
js_class = Blah
2.18.2.4.
readonly
2.18.2.5.
skip
2.18.2.6.
skip_jsdoc
2.18.2.7.
start
2.18.2.8.
main
2.18.2.9.
typescript_custom_section
2.18.2.10.
getter 和 setter
2.18.2.11.
inspectable
2.18.2.12.
skip_typescript
2.18.2.13.
getter_with_clone
2.18.2.14.
unchecked_return_type 和 unchecked_param_type
2.18.2.15.
return_description 和 param_description
3.
web-sys
3.1.
使用 web-sys
3.2.
Cargo 功能
3.3.
函式多載
3.4.
型別轉換
3.5.
繼承
3.6.
不穩定的 API
4.
使用 wasm-bindgen-test 測試
4.1.
用法
4.2.
編寫非同步測試
4.3.
在無頭瀏覽器中測試
4.4.
持續整合
4.5.
覆蓋率 (實驗性)
5.
貢獻給 wasm-bindgen
5.1.
測試
5.2.
內部設計
5.2.1.
Rust 中的 JS 物件
5.2.2.
將函式匯出到 JS
5.2.3.
將結構匯出到 JS
5.2.4.
從 JS 匯入函式
5.2.5.
從 JS 匯入類別
5.2.6.
Rust 型別轉換
5.2.7.
wasm-bindgen 中的型別
5.3.
js-sys
5.3.1.
測試
5.3.2.
新增更多 API
5.4.
web-sys
5.4.1.
概述
5.4.2.
測試
5.4.3.
記錄
5.4.4.
支援更多 Web API
5.5.
發佈
5.6.
團隊
淺色
Rust
煤炭
海軍藍
鮎魚
`wasm-bindgen` 指南
支援的 Rust 型別及其 JavaScript 表示法
本節概述了 `wasm-bindgen` 可以跨 WebAssembly ABI 邊界傳送和接收的所有型別,以及它們如何轉換為 JavaScript。