設置HTML視頻元素的「src」屬性不Vue.js和Vuex工作:替代用於設置srcObject
<video id="myVideoEl" :src="myStreamSrc" autoplay="autoplay">
myStreamSrc
是一個計算值,並在突變的事件設置處理:
AddStream: function (state, plMyStream) {
state.myRTCPeerConnection.addStream(plMyStream)
state.myStreamSrc = plMyStream
}
當我運行我的代碼的應用程序,我得到以下錯誤:
HTTP 「Content-Type」 of 「text/html」 is not supported. Load of media resource http://localhost:8080/[object%20MediaStream] failed.
當我執行以下操作時:
state.myVideoEl = document.querySelector('#myVideoEl')
state.myVideoEl.srcObject = payloadWithMyStream
我沒有收到任何錯誤並顯示流。問題是,我不能使用剪切的工作代碼,因爲引用的元素稍後添加到DOM。當我將div中的html視頻元素綁定到Vuex.js屬性時,此代碼段不起作用。然後我只是得到「未定義」(因爲帶有視頻元素的div元素在頁面加載時不存在)。
設置srcObject
和設置src
屬性有什麼不同嗎?我認爲,當我設置srcObject
視頻元素將具有src
屬性,但它不。
是否可以在視頻html屬性中設置srcObject
?
欲瞭解更多信息,請訪問我的theard在Vue.js論壇: https://forum.vuejs.org/t/reference-elements-when-they-rendered-with-v-if/16474/13
您是否嘗試過'<視頻V-IF = 「myStreamSrc」 ID = 「myVideoEl」:SRC = 「myStreamSrc」 自動播放=「自動播放「>'? – Reiner
嘗試了您的建議。我犯了同樣的錯誤。 – La0x1