最近在开发小程序,遇到一些坑,总结出来跟你们分享一下,我这里使用的是mpvue框架,mpvue也有很多坑~vue
1.scroll-view的属性设置,scroll-y设置,无论咱们设置scroll-y=true仍是false,其实都会滚动的,要想设置scroll-y为false,咱们须要用数据绑定的形式来设置才会起效:scroll-y=false小程序
2.有时候明明设置 一个变量,当它为false的时候才展现某个元素,好比 isHide?hide:show,有时候会发现,在页面中,仍是会先渲染出来一下,而后才被隐藏了,缘由是,最开始的时候,data数据尚未初始化完成,这个时候,isHide是undefined,undefined变成boolean值,就是false,因此最开始仍是show了,为了解决这种状况,咱们可使用全等符号。 isHide=== true ?hide:show服务器
3.显示image的时候,若是咱们设置了mode=widthFix,有时候在渲染的时候会看到图片有一个拉伸过程,而后才变成咱们指望的大小,解决这个问题,能够给image添加height:auto;或者使用background-image来展现,须要注意的是background-image不支持本地路径,能够支持本地base64或者服务器返回来的图片微信
4.在父组件跳转到子组件的时候,使用navigateTo方法,携带参数,若是参数里面带特殊字符,会被截断,致使咱们在子组件获取到的参数不正确。解决办法就是,经过encodeURIConponent,对参数进行编码,而后在子组件再进行解码,其实跟咱们url传递参数是同样的,都须要注意这一点。框架
5.cover-view组件IOS能够支持滚动了,不过须要7.0以上版本的微信。ide
6.单页面目前也是能够支持自定义导航栏,一样须要7.0以上版本的微信。编码
7.mpvue的坑,双向数据绑定的时候,有些安卓机会卡顿。能够经过防抖赋值或者v-model.lazy,不使用双向绑定。url
8.mpvue渲染速度比较慢,有时候会出现数据改变了,可是页面不渲染的状况。spa
9.<cover-view></cover-view>组件默认不换行,加上这一行代码,可让它换行white-space:pre-wrap;双向绑定
全文完,你们能够说说本身开发过程当中遇到了哪些坑,以及解决办法^_^