视频播放器

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;

相关推荐
小李子呢02118 小时前
前端八股性能优化(2)---回流(重排)和重绘
前端·javascript
桂花饼8 小时前
AI 视频生成:sora-2 模型快速对接指南
人工智能·音视频·sora2·nano banana 2·claude-opus-4-6·gemini 3.1
吴声子夜歌10 小时前
Vue3——Vue实例与数据绑定
前端·javascript·vue.js
AI创界者12 小时前
Ace-Step-1.5-XL-Turbo ai歌曲生成一键整合包,解压即用!支持高保真长音频,AI音乐制作进入2.0时代
人工智能·音视频
挖稀泥的工人12 小时前
AI聊天界面的布局细节和打字跟随方法
前端·javascript·面试
竹林81812 小时前
从“连接失败”到丝滑登录:我用 ethers.js 连接 MetaMask 的完整踩坑记录
前端·javascript
颜酱12 小时前
图片大模型实践:可灵(Kling)文生图前后端实现
前端·javascript·人工智能
Reart13 小时前
从0解构tinyWeb项目--(Day:2)
javascript·后端·架构
潜创微科技--高清音视频芯片方案开发13 小时前
2026年国内高清音视频切换器方案行业分析&选型参考指南
音视频·硬件工程
心连欣14 小时前
解锁对象遍历:当字符串遇上for...in循环
前端·javascript