mpvue小程序采坑记录,实操
1、小程序会员卡开卡,成功后回跳接收参数: <navigator target="miniProgram" app-id="wxeb490c6f9b154ef9" :extra-data="datas" > 会员卡开卡 </navigator> datas里面的三个参数一定要urldecode 回调取参数的时候需要定义APP 的onshow方法。 在app.vue中的onshow可以获取到,通过vuex store传递给需要的页面。 2、 问题描述:token如果用fly拦截,会有loading问题。比如拿到token后,在token接口有hideloading方法,会把当前页请求接口的loading也给隐藏。 解决方案:对这种特殊首屏页面加自定义loading。(缺点:会出现双loading,但是能接受。) 备选方案:通过store配置接口域名,可以把token也拼到接口变量上。不会发生上述问题。 3、 问题描述:发送优惠券类似场景,会有缓存。再领新的优惠券还是显示的上一张优惠券dom 解决方案:在onHide生命周期里面重置data。Object.assign(self.$data, self.$options.data())。如果跳转小程序和回跳的情况需要注意,比如有接收id请求接口的情况,直接使用this.$root.$mp.query.ids,重置data的时候不会产生影响。 4、 问题描述:开发时获取的微信头像和企业微信都能在canvas画图正常展示。但是真机无法展示。 解决方案:在小程序画图生成图片时必须在后台配置download白名单域名。包括从微信、企业微信获取到的头像,也需要配置。否则download不会成功。 5、 问题描述:web-view小程序跳往h5跳转问题。 解决方案:web-view是自动跳转的。需要单独写个新页面,传递跳转h5链接,跳转链接需要配置业务白名单,不能在当前页直接使用web-view组件。 <template> <div class="contentBox"> <span><web-view :src="urls">正在跳转,请稍后</web-view></span> </div> </template> 6、 问题描述:尽量不使用watch。属于全局的。watch监听的变量有变化,不管当前在哪个页面,都会执行watch事件。 7、 问题描述:小程序的ui库,iview weapp,input组件修改后data数据不会改变。 解决方案:需要特殊处理,加监听事件触发data修改。无法和普通input加v-model实现双向绑定。建议直接使用原生input。