USBDevice:opened 属性

有限可用性

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

实验性:这是一个实验性技术
在生产环境中使用此功能前,请仔细查看浏览器兼容性表

安全上下文:此功能仅在安全上下文(HTTPS)中,在某些或所有支持的浏览器中可用。

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

一个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
# ref-for-dom-usbdevice-opened

浏览器兼容性

BCD 表仅在启用 JavaScript 的浏览器中加载。