Javascript 以正确的格式将播放列表数组动态加载到video.js

Javascript 以正确的格式将播放列表数组动态加载到video.js,javascript,arrays,video.js,Javascript,Arrays,Video.js,我正在使用两个插件制作视频播放列表;和。他们要求播放列表的格式如下,并将视频加载到播放器上: player.playlist([{ sources: [{ src: 'https://someurl', type: 'video/mp4' }], }, { sources: [{ src: 'https://someurl', type: 'video/mp4' }], }]); 我使用ajax动态调用URL,然后使用player.playlis

我正在使用两个插件制作视频播放列表;和。他们要求播放列表的格式如下,并将视频加载到播放器上:

player.playlist([{
  sources: [{
    src: 'https://someurl',
    type: 'video/mp4'
  }],
}, {
  sources: [{
    src: 'https://someurl',
    type: 'video/mp4'
  }],
}]);
我使用ajax动态调用URL,然后使用
player.playlist
功能。看起来是这样的:

var videosrc = [];    
$.ajax(settings).done(function (response) {
    for (var i = 0; i < response.data.courses[0].videos.length; i++) {
        var vidsUrl = response.data.courses[0].videos[i].videoUrl
        videosrc.push({sources: [{src: vidsUrl, type: 'video/mp4'}]});
});
player.playlist(videosrc);
var videosrc=[];
$.ajax(设置).done(函数(响应){
对于(var i=0;i
console.log
vidsUrl
或在控制台中使用
player.playlist(videosrc)
,它们看起来都是这样的:

var videosrc = [];    
$.ajax(settings).done(function (response) {
    for (var i = 0; i < response.data.courses[0].videos.length; i++) {
        var vidsUrl = response.data.courses[0].videos[i].videoUrl
        videosrc.push({sources: [{src: vidsUrl, type: 'video/mp4'}]});
});
player.playlist(videosrc);

这似乎是正确的,但我仍然不认为它完全符合确切的
player.playlist
要求。我如何才能看到插件如何解释它,因为我所知道的只是chrome控制台格式化它的方式


现在发生的事情是,第一个视频加载并播放,但其他任何事情都不会加载和播放,它只是在您升级视频时重复。

您是否遇到错误或其他问题?此外,您还需要在ajax done函数中设置player.playlist。您正在异步调用player.playlist(videosrc);可能会在ajax调用完成之前执行,导致设置了一个空白数组。@basic嘿,很抱歉延迟(考试).你解决了!我犯了一个愚蠢的错误,需要将
播放器.playlist
放在done函数中,因为调用它太早了。但没有解释第一个视频将如何加载。很高兴我能提供帮助!