USBDevice: opened 属性

可用性有限

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

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

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

注意:此功能在 Web Workers 中可用。

USBDevice 接口的只读属性 opened 指示是否已与配对的 USB 设备启动了会话。在网页可以控制设备之前,必须先打开该设备。

一个 Boolean 值。

示例

此示例适用于具有多色 LED 的假设 USB 设备。它演示了在调用 USBDevice.controlTransferOut 设置特定 LED 颜色之前,如何测试设备是否已打开。

注意: 可以传递给 USB 设备的数据以及如何传递这些数据是每个设备特有的。

js
async function setDeviceColor(usbDevice, r, g, b) {
  if (device.opened) {
    // This hypothetical USB device requires that the data passed to
    // it be in a Uint8Array.
    const payload = new Uint8Array([r, g, b]);

    await usbDevice.controlTransferOut(
      {
        requestType: "vendor",
        recipient: "device",
        request: 1,
        value: 0,
        index: 0,
      },
      payload,
    );
  }
}

规范

规范
WebUSB API
# dom-usbdevice-opened

浏览器兼容性