视频播放器

import React from 'react';

class Player extends React.Component {

constructor(props) {

super(props);

}

componentDidMount() {

if(!window.polyvLivePlayer){

this.loadScript('https://player.polyv.net/resp/live-h5-player/latest/liveplayer.min.js')

.then(() =>{

this.loadPlayer();

});

}

}

componentWillUnmount() {

if(this.player){

this.player.destroy();

}

}

loadPlayer() {

this.player = window.polyvLivePlayer({

wrap: '.player',

width: '100%',

height: '100%',

uid: 'uid',

vid: 'vid',

});

}

loadScript(src) {

const headElement = document.head || document.getElementsByTagName('head')[0];

const _importedScript = {};

return new Promise((resolve, reject) => {

if (src in _importedScript) {

resolve();

return;

}

const script = document.createElement('script');

script.type = 'text/javascript';

script.onerror = err => {

headElement.removeChild(script);

reject(new URIError(`The Script ${src} is no accessible.`));

}

script.onload = () => {

_importedScript[src] = true;

resolve();

}

headElement.appendChild(script);

script.src = src;

})

}

render() {

return (

<div className="wrap">

<div className="player"></div>

</div>

)

}

}

export default Player;

相关推荐
Splendid8 分钟前
Geneformer:基于Transformer的基因表达预测深度学习模型
javascript·算法
EndingCoder9 分钟前
React Native 开发环境搭建(全平台详解)
javascript·react native·react.js·前端框架
小公主14 分钟前
用原生 JavaScript 写了一个电影搜索网站,体验拉满🔥
前端·javascript·css
Moment17 分钟前
为什么我在 NextJs 项目中使用 cookie 存储 token 而不是使用 localstorage
前端·javascript·react.js
天才熊猫君21 分钟前
uniapp小程序改网页笔记
javascript
F_Director22 分钟前
傻子都能理解的 React Hook 闭包陷阱
前端·react.js·源码阅读
江城开朗的豌豆29 分钟前
Git分支管理:从'独狼开发'到'团队协作'的进化之路
前端·javascript·面试
红衣信32 分钟前
电影项目开发中的编程要点与用户体验优化
前端·javascript·github
帅夫帅夫1 小时前
一文手撕call、apply、bind
前端·javascript·面试
勿芮介1 小时前
【开发技术】.Net使用FFmpeg视频特定帧上绘制内容
ffmpeg·.net·音视频