【发布时间】:2017-11-29 16:23:09
【问题描述】:
我正在尝试使用 WebUSB API 从 USB 设备获取断开连接事件。
我正在通过以下方式访问设备并添加事件侦听器以“断开连接”:
navigator.usb.requestDevice({ filters: [{ vendorId: ... ... ...}] })
.then(device=> {
navigator.usb.addEventListener('disconnect', device => {
printToScreen("Message", "Device disconnect!!! ");
});
return device.open();
})
仅供参考:printToScreen() 方法将文本添加到 div 标签。
设备已连接,当我单击地址栏中的锁定图标时,我可以看到列出的设备权限,并且我可以检索着陆页 URL 没有问题。当我断开设备时,列出的设备权限被删除(这是正常的,因为设备没有序列号,因此用户授予的权限不能持久)但没有出现断开事件?不知道我做错了什么。
所以我的问题是,如何从断开事件中检测/获取回调?或者这是一个错误,我应该提交它?任何帮助将不胜感激,谢谢。
同样,在将序列号添加到设备后,当我尝试使用“return device.open()”打开设备时出现“NotFoundError:设备不可用”,但“navigator.usb.requestDevice”返回正确的设备。
【问题讨论】:
-
通过替换在'printToScreen'上方添加console.log进行双重检查后,是的,提交错误。
标签: javascript webusb