Я разрабатываю PWA с Ionic 4 и Angular 7.
Мне нужно получить доступ к веб-камере, если она существует, и затем отобразить на холсте.
В этом процессе я использую ImageCapture (https://developer.mozilla.org/en-US/docs/Web/API/ImageCapture).
let constrains =
{
audio:false,
video:
{
frameRate: { ideal: 60, min: 30 },
facingMode: { ideal: "user" },
width: { exact: 626 },
height: { exact: 720 },
}
}
navigator.mediaDevices.getUserMedia(constrains).then(mediaStream =>
{
this.Webcam.nativeElement.srcObject = mediaStream;
this.Webcam.nativeElement.play();
const track = mediaStream.getVideoTracks()[0];
let ic:ImageCapture = new ImageCapture(track);
return this.ImageCapture.getPhotoCapabilities();
});
Я получил ошибку, потому что TypeScript ничего не знал о ImageCapture, поэтому я установил наборы, добавив их в мой пакет.json:
npm install --save-dev @types/w3c-image-capture
При сборке приложения с "ionic serve" или "ionic build --prod" я получаю эту ошибку:
ОШИБКА в src / app / pages / photoframe / photoframe-take / photoframe-take.page.ts (26,22): ошибка TS2304: не удается найти имя 'ImageCapture'.
src / app / pages / photoframe / photoframe-take / photoframe-take.page.ts (117,28): ошибка TS2663: не удается найти имя 'ImageCapture'. Вы имели в виду элемент экземпляра this.ImageCapture?
Если я отлаживаю приложение, значение ImageCapture имеет значение, так что проблема только в сборке.
Как я могу удалить эту ошибку из моей сборки?