uniapp使用过程中一些踩坑
1.carousel-3d轮播图transfrom 斜切移动图片模糊(ios)表现为—transform y轴斜切计算浮点不准确,
1-1.设置偶数或调整斜切y方向为0。
1-2.图片css设置
img{image-rendering: -moz-crisp-edges; /* Firefox /
image-rendering: -o-crisp-edges; / Opera */
image-rendering: -webkit-optimize-contrast; /*Webkit (non-standard naming)
image-rendering: crisp-edges; /-ms-interpolation-m[[ode: nearest-neighbor; / IE (non-standard property) */}
2.carousel-3d轮播图点击后无法轮播(文档太差了没方法,只能看例子跟原型链属性找)
//先暂停
this.carousel.pauseAutoplay()
在开启
setTimeout(() => {
this.carousel.startAutoplay()},
0)
3.scroll-view 切换分栏,回到顶部滚动条不重置,
切换tab时执行:
this.scrollTop = this.scrollTop === 0 ? 1:0 //手动设置,避免数据刷新视图未刷新
4.scroll-ivew列表拖移问题(ios),添加禁止向上冒泡
在scrollView标签内添加以下属性:disableBounce=”true”
//开启禁止弹性滚动@touchmove.stop
//开启禁止向上冒泡
5.浮动弹窗滑动 ,底层也跟着移动。
—-设置在标签内添加以下属性 —-@touchmove.stop.prevent 禁用移动层位移
6.底部弹层弹层异常uni-popup,不吸底。
修改源码 ,在uni-popup.vue文件内 ,
.uni-popup__wrapper-box { /* #ifndef APP-NVUE */ display: block;
/* #endif */ position: relative;
/* iphonex 等安全区设置,底部安全区适配 */ /* #ifndef APP-NVUE *
/ //注释此行 padding-bottom: constant(safe-area-inset-bottom);
//注释此行 padding-bottom: env(safe-area-inset-bottom); /* #endif */ }
注释预留的吸底安全区代码,就可以吸底了
7.boder绘制线段,浮点数在iphonexs上异常消失最小设置1像素,避免问题。
8.子组件没有onshow与onload方法,
父组件逻辑尽可能写到onShow内,onlad初始化只执行一次,onShow是每次进来都会执行,通常写一些数据初始化(接口,刷新内容)。
9.高度塌陷问题,与页面适配1.子容器撑开父容器–遇到高度塌陷问题。
1-1.设置元素的浮动
1-2.将元素设置为行内块元素:display:inline-block
1-3.设置overflow为非visible的值:overflow:hidden
2.适配建议外层使用百分比,非必要元素可写px,编译过程中会自动转义像素适配。
10.canvas相关,图片loading,跨域下载,图片展示,长按保存。
1.使用时先请求接口拿到接口链接,分别进行加载,下载图片到本地,
绘制-通过回调拉起窗口
uni.showLoading({ title: ‘加载中’, mask: true });
const img = new Image() img.src = userInfo.avatar;
img.onload = async (res) => { await this.inCanvas() uni.hideLoading()//拿不到canvas展示出来回调函数暂时这么写 this.posterState = true; }
2.直接用的图片,会跨域,这里要先进行下载,把图片下到本地:uni.getImageInfo({ src: _this.photoPath, success(res) { //开始绘制 }, fail(res){ //绘制失败 }) }
3.绘制完成导出为指定大小图片,把this.tempFilePath插入标签的src=“”内 let me = this uni.canvasToTempFilePath({ canvasId: ‘shareCanvas’, async success(res) { onsole.log(‘success’, res) me.tempFilePath = res.tempFilePath }, fail(e) { console.log(‘fail’, e) } })
4. 与 有区别 ,image更预览纯看,img适合引用,在浏览器内长按会存在不同表现方式。
二.组件封装建议
1.-遍历item与data传递尽量写父组件上(子组件没有onload与onShow),不然处理起来很麻烦。
2.-子组件制作时候尽量提取公共方法,扩展函数兼容多种参数已达到不同效果。
3.写了8个组件最后因为各种优化,需求的改动,只用到了5个,造轮子前多与后端和产品交流,避免浪费开发资源。
Efficacy of assisted hatching based on embryo quality in IVF cycles with fresh transfers can i buy priligy in usa In studies using animal models, the muscle relaxation that is induced by carisoprodol is associated with a change in the interneuronal activity of the spinal cord and of the descending reticular formation, located in the brain
cheapest priligy uk Thus far, it exhibits excellent ocular pharmacokinetics and poor systemic absorption
SRC 1 KO mice were generated from male and female heterozygous SRC 1 crosses priligy usa