在 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!我們不想將非標準 API 新增至此 crate。 -
如果您的介面定義在任何
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
來確保綁定看起來正確。