audio自动播放时获取duration为NaN

audio的音频路径写死时没有问题

<audio id="audio" autoplay>
    <source src="../aa.mp3" type="audio/mpeg"/>
</audio>

当路径是从后台获取,动态加上的时候,播放的时候获取不到duration

<audio id="audio" autoplay>
    <source :src="infoData.audios_src" type="audio/mpeg" />
</audio>

解决方法:在获取数据的时候,加一个判断,让它load()一下就可以了

getLessonInfo:function(){
    var self = this;
    axios.get(baseURL,{
        params:{
            api_token:self.api_token,
            member_id:self.member_id,
            course_id:self.course_id
        }
    }).then(function(res){
        var _tagArr = [];
        var audio = document.getElementById("audio");
        self.infoData = res.data.data;
        var audio_src = res.data.data.audios_src;
        if(audio_src){
                        //load()方法重新加载音频/视频元素
                    audio.load();
        }
    });
}

猜你喜欢

转载自blog.csdn.net/zjsfdx/article/details/81044941