uni-app 小程序 支付宝与微信的差异
发表时间:2021-1-8
发布人:葵宇科技
浏览次数:82
1.所有的需要判断的位置都要加上uni判断语句(注释符是必须)
- -html- -
<!-- #ifdef MP-WEIXIN -->
<!-- #endif -->
- -css- -
/ #ifdef MP-WEIXIN /
/ #endif /
- -js- -
//#ifdef
//#endif
2.image组件的微信支付宝区别
//TODO1:开发页面时,image标签的所有mode都需要填写值,
//TODO2:所有本地图片命名不能有@符号
3:登录,获取手机号码
- -授权用户信息- -
MP-WEIXIN
<button open-type="getUserInfo" @getuserinfo="getuserinfo">允许</button>
MP-ALIPAY
<button open-type="getAuthorize" scope="userInfo" @getAuthorize="getAlipayUserInfo" @error="authError" >允许</button>
先调用my.getAuthCode({scopes: 'auth_base',})后调用my.getOpenUserInfo
//TODO:获取code用auth_base一样可以。用auth_userInfo会弹出两次的授权框,审核的时候会有拒的风险
- -手机号码- -
MP-WEIXIN
<button open-type="getPhoneNumber" @getphonenumber="getPhoneNumber">授权手机</button>
MP-ALIPAY
<button
open-type="getAuthorize" scope="phoneNumber"
@getAuthorize="getPhoneNumber"
@error="mobileError">授权手机</button>
my.getPhoneNumber
4.自定义组件的文件放置
h5或者全兼容组件存放于components
仅针对微信组件存放于wxcomponents
仅针对支付宝组件存放于mycomponents
5.小程序管理后台配置的二维码
- -微信扫码时- -
二维码参数直接在页面组件的onLoad可以获取,微信会生成一个对象{q:二维码网址}
- -支付宝扫码时- -
二维码参数需要在全局组件app.js的onLaunch或者onShow获取,生成对象{query:{qrCode:二维码网址}}
可通过globalData设置全局获取
5.支付区别
微信直接用后台返回对象通过参数传递uni.requestPayment({...obj})
支付宝后台返回一般有两种,一种是交易号(tradeNO),一种是表单形式的订单信息(orderStr) 均可通过uni.requestPayment({provider:'alipay',orderInfo:res.data})方式实现
7.上传发布前
//TODO:压缩图片用神器:https://tinypng.com/
//TODO:把所有图片放在服务器上访问也可以
//TODO:分包,一个包尽量不要超过40个页面。最多4个包