视频播放器

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 = () => {

_importedScriptsrc = true;

resolve();

}

headElement.appendChild(script);

script.src = src;

})

}

render() {

return (

<div className="wrap">

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

</div>

)

}

}

export default Player;

相关推荐
liangshanbo12155 小时前
React Fiber:从“解决卡顿”到完整更新链路
前端·javascript·react.js
AOI小白新手上路5 小时前
视频去雨网络的模块缝合路线 · 实践笔记
网络·笔记·音视频
铅笔小新z6 小时前
【stm32】理解弱引用
javascript·stm32·嵌入式硬件
easyeye1236 小时前
降维打击~使用视频大模型去除路人工作流
音视频
凤城老人6 小时前
从PyQt6到Electron:一款英语字帖生成器的跨平台重构实战与踩坑全记录
javascript·重构·electron
企业数字化笔记6 小时前
视频视觉任务怎样选择媒体处理技术?FFmpeg、OpenCV、GStreamer 的职责与适用场景
ffmpeg·音视频·媒体
星栈18 小时前
pnpm 12 升级实测
前端·javascript
Ai-_Man18 小时前
您您这可以把Microsofat Copilot的多个会话比如说。左侧的多个会话一次性导出吗?不是单条会话里面的多次会对话。AI导出鸭
javascript·人工智能·ai·小程序·电脑·copilot
码上观世界19 小时前
一张图 + 一段音频,生成口型同步、有表情的数字人
音视频