
前言
前一段时间我刚做完了一个uni-app项目,遇到了两个比较大的坑,特此来记录下。
正文
坑一:
在ios中,uni-app的video组件不支持播放上传到网易云的视频,或者说不支持播放没有带视频格式后缀的视频,但在安卓没有问题。我尝试过用web-view,但也不行。最后的解决方案是用了iframe,但是我们要做的是视频列表,就相当于了嵌入了一整个列表的页面,性能可想而知~
期间我有尝试过用VideoJS,但是在ios中,它也同样不支持播放没有后缀的视频。
坑二:
项目中有一个需求是根据头像的颜色来渲染页面的背景色,但是有跨域的问题,图片的存放地址必须和项目的存放地址必须在同一域名下。
代码如下:
<canvas style="width: 600rpx; height: 400rpx;" canvas-id="firstCanvas" id="firstCanvas"></canvas>
getColor() {
const ctx = uni.createCanvasContext('firstCanvas')
ctx.drawImage(this.workInfo.logo, 0, 0, 111, 111)
ctx.draw()
setTimeout(()=>{
uni.canvasGetImageData({
canvasId: 'firstCanvas',
x: 100,
y: 100,
width: 1,
height: 1,
success(res) {
if(res.data[0] == 255 && res.data[1] == 255 && res.data[2] == 255 && res.data[3] == 255){
}else {
that.bgColor = "linear-gradient(to right, rgba("+res.data[0]+","+res.data[1]+","+res.data[2]+","+res.data[3]+"), #999999)"
}
},
fail(res){
}
})
},1000)
},
总结
我们在项目开始前,选择框架要慎之又慎,尤其是像我们这种做完的东西要放在app里面的,更加要谨慎。app本身存在的 bug也会直接影响到我们要做的东西。而且如果不是做多端,完全没必要用uni-app。
版权声明:本文为weixin_39880623原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。