2017-09-27 13 views
0

私はUSBポートに接続されたデバイスを見るために以下のコードを使用しています。コマンドプロンプトで 'ng serve'コマンドを実行するとコンパイル時に "プロパティusbがタイプナビゲータに存在しません"というエラーが表示されるプロパティ "usb"がangular2タイプスクリプトプロジェクトのタイプ "Navigator"に存在しません

ngOnInit() { 
    async() => { 
     let devices = await navigator.usb.getDevices(); 
     devices.forEach(device => { 
      // Add |device| to the UI. 
      console.log(device); 
     }); 
    } 
} 

答えて

1

あなたはnavigator.usbが存在することを確認している場合、あなたはそれのためにいくつかの型情報を含めるようにインターフェイスを拡張することができます

interface Navigator { 
    usb: { 
     getDevices(): any[]; 
    } 
} 

これは、コンパイル時のエラーを解決します(ただし、実行時エラーになりますusbが存在しない場合)。

インタフェースが同じ共通ルートに配置する必要があります...ので、あなたがモジュール内にある場合、あなたが使用する必要があります。

declare global { 
    interface Navigator { 
     usb: { 
      getDevices(): any[]; 
     } 
    } 
} 
関連する問題