В vue, вы никогда не должны использовать document.getElementById()
.Все, что вы можете сделать с document.getElementById()
, вы можете сделать с ref
.Попробуйте ...
<div id="app">
<video ref="myVid" autoplay></video>
</div>
затем в вашем скрипте внутри Vue ...
var me = this;
// Start video camera
navigator.getUserMedia({
video: true,
audio: false
},
function (stream) {
me.$refs.myVid.srcObject = stream
},
function (error) {
console.error(error)
}
)
Это потому, что идентификатор уровня DOM ограничен всей страницей (целым приложением).Внутри вашего маленького компонента вы не можете определить, какие идентификаторы могут использовать другие компоненты, и возможны конфликты.Ссылка должна быть уникальной только внутри вашего компонента.