【发布时间】:2019-12-03 04:08:13
【问题描述】:
我使用播放器对象。 var player = videojs.getPlayer('videoplayer');
console.log(player) 时会显示 mediainfo 对象。
但是当安慰 mediainfo 名称值时,它将返回未定义。 console.log(player.mediainfo.name);
我希望显示名称值。
【问题讨论】:
标签: video.js brightcove
我使用播放器对象。 var player = videojs.getPlayer('videoplayer');
console.log(player) 时会显示 mediainfo 对象。
但是当安慰 mediainfo 名称值时,它将返回未定义。 console.log(player.mediainfo.name);
我希望显示名称值。
【问题讨论】:
标签: video.js brightcove
我相信您所看到的是 console.log() 将 undefined 显示为其返回值的行为。即使你看到了,你也应该看到这个
>console.log('foo')
foo
undefined
这在Why does console.log say undefined, and then the correct value?中有详细解释
对比一下,你也可以看到undefined直接输入就没有打印出来:
player.mediainfo.name 进入控制台。例如,这是我们文档中的示例播放器之一的输出:
>player.mediainfo.name
"Displaying a Pre-Roll Ad in a Brightcove Player"
但是你会在使用console.log()之后看到undefined
>console.log(player.mediainfo.name)
Displaying a Pre-Roll Ad in a Brightcove Player
undefined
【讨论】:
听起来您正试图在 mediainfo 填充之前获取它。一旦播放器加载它,然后从 Brightcove 的播放 API 获取视频,然后设置 mediainfo 并加载视频源。试试
player.on('loadstart', function() { console.log(player.mediainfo.name); });
【讨论】: