不动产;usb";“类型”上不存在;“导航器”;在angular2 typescript项目中
我使用下面的代码只是为了查看usb端口上连接的设备。在命令提示符下运行“ng serve”命令时,在编译时出现错误“类型导航器上不存在属性usb”不动产;usb";“类型”上不存在;“导航器”;在angular2 typescript项目中,angular,typescript,Angular,Typescript,我使用下面的代码只是为了查看usb端口上连接的设备。在命令提示符下运行“ng serve”命令时,在编译时出现错误“类型导航器上不存在属性usb” ngOnInit() { async () => { let devices = await navigator.usb.getDevices(); devices.forEach(device => { // Add |device| to the UI.
ngOnInit() {
async () => {
let devices = await navigator.usb.getDevices();
devices.forEach(device => {
// Add |device| to the UI.
console.log(device);
});
}
}
如果您确定存在
navigator.usb
,则可以扩展该接口以包含其某些类型信息:
interface Navigator {
usb: {
getDevices(): any[];
}
}
这将解决编译时错误(但如果usb
不存在,将导致运行时错误)
接口需要放在同一个公共根目录中。。。因此,如果您在模块中,您可能需要使用:
declare global {
interface Navigator {
usb: {
getDevices(): any[];
}
}
}
如果您确定存在
navigator.usb
,则可以扩展该接口以包含其某些类型信息:
interface Navigator {
usb: {
getDevices(): any[];
}
}
这将解决编译时错误(但如果usb
不存在,将导致运行时错误)
接口需要放在同一个公共根目录中。。。因此,如果您在模块中,您可能需要使用:
declare global {
interface Navigator {
usb: {
getDevices(): any[];
}
}
}
最好的解决方案是使用
@types/w3cwebusb
打字包
使用以下任一方法将其添加到项目中:
纱线添加--dev@types/w3c web usb
或npm
npm安装——保存dev@types/w3cwebusb
最好的解决方案是使用@types/w3cwebusb
打字包
使用以下任一方法将其添加到项目中:
纱线添加--dev@types/w3c web usb
或npm
npm安装--保存dev@types/w3cwebusb
纱线添加-D@types/w3cwebusb
或
npm安装--保存dev@types/w3cwebusb
然后,在typescript文件的顶部添加以下指令:
//
纱线添加-D@types/w3c web usb
或
npm安装--保存dev@types/w3cwebusb
然后,在typescript文件的顶部添加以下指令:
//
如何使用它?在我运行npm安装--save dev@types/w3c web-usb
之后,编译器在构建时仍然显示属性“usb”在类型“Navigator”上不存在。如何解决它?如何使用它?在我运行npm安装--save dev@types/w3c web usb
之后,编译器在构建时仍然显示属性“usb”在类型“Navigator”上不存在。如何解决?