解决uniapp开发抖音小程序video-player覆盖问题,超详细教程,前端相关操作,已成功上线产品

解决uniapp开发抖音小程序video-player覆盖问题,超详细教程,前端相关操作,已成功上线产品

码农世界 2024-05-30 前端 100 次浏览 0个评论

背景:

当使用uniapp开发抖音小程序原计划使用video组件,但接入抖音云时问题来了,需要使用video-player播放组件,开始根据官方提供的文档进行研究,但是文档针对于此功能都是使用的抖音原生,uniapp如何使用呢?

参考资料:

video-player

Docshttps://bytedance.larkoffice.com/docx/TsJmdbX6co33uJxi7j9cfYc2nnd#Mp5Hd1YOYoOrBGxjTK3cngUFnWd小程序自定义组件支持

小程序自定义组件支持 | uni-app官网

流程:

1,将原生的video-player组件导入uniapp项目中,(参考小程序自定义组件支持 | uni-app官网)

例子展示(文章最上方可自行下载)

需要使用组件的页面page.json相关配置

2,页面中组件的使用,这里将video组件放在一起对比看方法的使用,以及传参,大部分都是一样的

注意:video-player组件中两个关键参数

视频播放异常分析:

进行到这里项目中的视频原则上已经正常播放了,但是视频页面中却出现了如下图的情况,

如果出现类似情况,首先注意上述那两个关键参数是否正常获取了,如正常获取也正常传参,此时请注意error函数输出的相关提示

当时我项目中的提示如上图所示,就以为是那两个参数的问题,就去找后端核实给我的这两个参数是否有效,但是查找一番后发现,后端给我的这两个参数和我获取的参数不一样

我获取的

后端传过来的

这时候了解到一个情况精度丢失

eg:我的处理办法如下

//1,在网络请求中设置数据类型为string
dataType: 'string',
success: (res) => {
						console.log(res);
						if (res.data.code == 40002) {
							uni.removeStorageSync('token')
							this.denglu()
							return
						}
						
				
						var json = res.data.replace(/:s*([0-9]{15,})s*(,?)/g, ': "$1" $2')
						//2.根据后端返回的数据调用一次或者两次replace替换
						var json1 = json.replace(/:s*([0-9]{15,})s*(,?)/g, ': "$1" $2')
						//3.手动转换回json数据即可
						var trueData = JSON.parse(json1);
						console.log(trueData, 'hahahh') //有问题的数据,长字段被四舍五入的数据
					}
				

进行到这里项目中的视频已经正常播放了

转载请注明来自码农世界,本文标题:《解决uniapp开发抖音小程序video-player覆盖问题,超详细教程,前端相关操作,已成功上线产品》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,100人围观)参与讨论

还没有评论,来说两句吧...

Top