这是我用来渲染媒体播放器的react js文件代码。componentDidMount()我在加载此页面时导入了js文件,并在渲染时使用options参数调用'amp‘函数。
componentDidMount () {
const script = document.createElement("script");
script.src = "//amp.azure.net/libs/amp/2.1.5/azuremediaplayer.min.js";
script.async = true;
document.body.appendChild(script);
}
render() {
var myOptions = {
"nativeControlsForTouch": false,
controls: true,
autoplay: true,
width: "640",
height: "400",
}
var myPlayer = amp("azuremediaplayer", myOptions);
myPlayer.src([
{
"src": "//amssamples.streaming.mediaservices.windows.net/91492735-c523-432b-ba01-faba6c2206a2/AzureMediaServicesPromo.ism/manifest",
"type": "application/vnd.ms-sstr+xml"
}
]);
return (
<div className="form-horizontal">
<div className="form-group">
<div className="col-sm-4">Azure Media Player</div>
<div className="col-sm-6">
<video id="azuremediaplayer" class="azuremediaplayer amp-default-skin amp-big-play-centered" tabindex="0"></video>
</div>
</div>
</div>
);
}
}
export default AddItemForm;
控制台显示此错误**第26行:'amp‘未定义no-undef**
发布于 2018-04-18 22:15:48
我认为如果你像script.async = false;
一样以同步的方式加载播放器的脚本,它会正常工作。我知道这会损害性能,但不幸的是,这是加载这个奇怪的打包播放器的方式!我讨厌他们没有为它做一个npm包的事实!
https://stackoverflow.com/questions/49751431
复制相似问题