根据视频url来获取该视频的总时长,以便显示
最近一个需求是需要一个帖子列表中视频帖需要显示总时长数,但是接口只返回了一个视频的url,找了一些文章然后终于实现了这个功能
res.data.data.forEach(item => {
// 因为是接口返回的是列表,所以要遍历筛选出视频帖
if(item.type ==1) {
var videoDom = document.getElementById('video');
var audio = new Audio(item.videoUrl)
var duration = 0
let that = this
audio.addEventListener("loadedmetadata", function (e) {
duration = audio.duration // 通过添加监听来获取视频总时长字段,即duration
that.$set(item, 'videoDuration',duration) // 将时长绑定到数组中对应的视频帖上,html中直接使用即可
console.log('视频时长为', duration)
});
}
})