#javascript #angular #typescript #internet-explorer #webcam
#javascript #angular #typescript #internet-explorer #Вебкам
Вопрос:
Привет, я использую библиотеку webcamJS в своем проекте Angular (потому что мне нужно использовать веб-камеру в IE 11), в этой библиотеке есть функция с именем «прикрепить», и она получает идентификатор элемента, в котором отображается изображение, когда я передаю свой идентификатор div, он не распознается в библиотеке, если япроверьте в инспекторе браузера, правильный идентификатор div.
вот мой html
<div #my_camera ></div> <!--div id="my_camera" ></div -->
и мой Ts, который использует чистую функцию JS
Webcam.attach("#my_camera");
я пробовал без #, но то же самое.
ошибка в библиотеке: «Не удалось найти элемент DOM для подключения».
Каков наилучший способ использовать JS в моей TS? Почему JS не распознает идентификатор моего DIV?
С уважением.
Комментарии:
1. Можете ли вы показать, где вы используете
Webcam.attach("#my_camera")
. И почему ваш div с идентификатором «my_camera» прокомментирован?2. Я хочу уточнить у вас, работает ли ваш код для других браузеров или выдает аналогичную ошибку? Убедитесь, что вы разместили сайт на веб-сервере. Попробуйте выполнить тест с использованием протокола HTTPS. Убедитесь, что Flash включен для браузера IE. Кроме того, убедитесь, что вы не используете приведенный выше код в модели или диалоговом окне. Это может вызвать аналогичную ошибку .
3. div с id прокомментирован, потому что я пытался ввести id двумя способами ( # и id=»» ), но это та же ошибка. я использую метод attach в методе ngAfterViewInit. ` ngAfterViewInit{ Webcam.attach(«#my_camera») } ` В других браузерах — это та же ошибка, которую я пробовал в Fire Fox, Chrome и IE 11.
4. Согласно вашему предыдущему комментарию, мы видим, что вы получаете ту же ошибку и в других браузерах. Исходя из этого, мы можем сказать, что эта проблема конкретно не связана с браузером IE. В вашем коде есть какая-то проблема, которую вам, возможно, потребуется решить, чтобы исправить эту проблему.
Ответ №1:
Попробуйте это
HTML:
<div #my_camera ></div>
TS:
@ViewChild('my_camera') myCamaraView : ElementRef;
Webcam.attach(myCamaraView);
Для получения дополнительной информации проверьте это: https://www.techiediaries.com/angular-elementref /
Комментарии:
1. И не забудьте отключить ngDestroy!