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。

  

posted @ 2019-06-12 14:48  问问大将军  阅读(1161)  评论(0编辑  收藏  举报