供应商前缀 API

在 Web 上,新的 API 通常在处于实验阶段时会有供应商前缀。例如,在撰写本文时,`AudioContext` API 在 Safari 中被称为 `webkitAudioContext`。`vendor_prefix` 属性指示这些备用名称,如果未定义正常名称,则使用这些备用名称。

例如,要使用 `AudioContext`,您可以执行以下操作

#![allow(unused)]
fn main() {
#[wasm_bindgen]
extern "C" {
    #[wasm_bindgen(vendor_prefix = webkit)]
    type AudioContext;

    // methods on `AudioContext` ...
}
}

每当使用 `AudioContext` 时,它将使用 `AudioContext`(如果全局命名空间定义了它),或者回退到 `webkitAudioContext`。

请注意,`vendor_prefix` 不能与 `module = "..."` 或 `js_namespace = ...` 一起使用,因此它基本上仅限于当今的 Web 平台 API。