HIDDevice: forget() 方法

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

安全上下文: 此功能仅在安全上下文(HTTPS)中可用,且支持此功能的浏览器数量有限。

实验性: 这是一项实验性技术
在生产中使用此技术之前,请仔细检查浏览器兼容性表格

注意:此功能在 Web Workers 中可用,但 共享 Web Workers 除外。

HIDDevice 接口的 forget() 方法会关闭与 HID 设备的连接并忘记该设备。

语法

js
forget()

参数

无。

返回值

一个 Promise,一旦连接关闭、设备被忘记且权限被重置,它就会以 undefined 解析。

示例

在下面的示例中,我们连接到一个 Nintendo Switch Joy-Con Right HID 设备,闪烁一次,然后断开连接。

js
async function blink() {
  const devices = await navigator.hid.requestDevice({
    filters: [
      {
        vendorId: 0x057e, // Nintendo Co., Ltd
        productId: 0x2007, // Joy-Con Right
      },
    ],
  });
  const device = devices[0];
  await device.open();
  // Turn off
  await device.sendFeatureReport(reportId, Uint32Array.from([0, 0]));
  await new Promise((resolve) => setTimeout(resolve, 100));
  // Turn on
  await device.sendFeatureReport(reportId, Uint32Array.from([512, 0]));
  await new Promise((resolve) => setTimeout(resolve, 100));
  // Finally, disconnect from it
  await device.forget();
}
blink();

规范

规范
WebHID API
# dom-hiddevice-forget

浏览器兼容性