在 web-sys
中支援更多 Web API
-
確保描述介面的
.webidl
檔案存在於crates/web-sys/webidls/enabled
目錄中的某處。首先,檢查我們是否有你的 API 的 WebIDL 定義檔
grep -rn MyWebApi crates/web-sys/webidls
-
如果您的介面定義在
crates/web-sys/webidls/enabled
目錄內的.webidl
檔案中,請跳至步驟 (3)。 -
如果您的介面尚未在任何檔案中定義,請在相關標準中找到 WebIDL 定義,並將其作為新的
.webidl
檔案新增至crates/web-sys/webidls/enabled
。 請確保它是一個標準的 Web API!我們不希望在此 crate 中新增非標準的 API。 -
如果您的介面定義在任何
crates/web-sys/webidls/unavailable_*
目錄中的.webidl
檔案中,您需要將它移動到crates/web-sys/webidls/enabled
中,例如:cd crates/web-sys git mv webidls/unavailable_enum_ident/MyWebApi.webidl webidls/enabled/MyWebApi.webidl
-
-
重新產生
web-sys
crate 自動產生的綁定,您可以使用以下指令執行此操作cd crates/web-sys cargo run --release --package wasm-bindgen-webidl -- webidls src/features ./Cargo.toml
然後,您可以使用
git diff
來確保綁定看起來正確。