视频播放器

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;

相关推荐
程序大视界2 分钟前
2026国产AI视频生成工具推荐
人工智能·音视频
happymaker062611 分钟前
vue的基本使用和指令
前端·javascript·vue.js
凉生阿新15 分钟前
【React】从零配置 Git Hooks:提交前自动校验与格式化(Vite + React 19)
前端·git·react.js
英俊潇洒美少年17 分钟前
Vue3 为什么不做 Fiber / 并发渲染?
前端·javascript·vue.js
小小亮018 小时前
Next.js基础
开发语言·前端·javascript
华洛9 小时前
我用AI做了一个48秒的真人精品漫剧,不难也不贵
前端·javascript·后端
Amumu121389 小时前
Js:正则表达式(二)
开发语言·javascript·正则表达式
Sgf22710 小时前
ES8(ES2017)新特性完整指南
开发语言·javascript·ecmascript
Cobyte12 小时前
1.基于依赖追踪和触发的响应式系统的本质
前端·javascript·vue.js