微信小程序快速移植支付宝小程序
移植背景:
1. 支付宝小程序开发文档只了解了大致框架,跑了demo,具体Api、组件没太多了解;
2. 已有微信小程序,移植支付宝小程序做预研(主要针对授权登录、支付等功能)。
3. 移植的微信小程序属小型项目,页面8个,组件两个。首页功能性较强,集成了主要的业务处理逻辑,涉及登录、获取用户手机号码、获取定位信息、下单、支付、查看卡券等功能。
移植用时:
大致2小时,基本完成前端移植(控制台无报错,接口正常调用,用户登录授权需等后端接口改造,具体页面和流程需待后端相关接口改造后再行调试验证)
移植过程:
1. 创建支付宝小程序:
最好是基于todo模板创建一个demo项目,这样方便移植的时候对比修改。
2. 公共项目配置文件复用:
app.json文件中,支付宝小程序window配置项与微信小程序不同,需要单独修改。

app.js文件中,支付宝小程序默认没有全局变量的,我们需要自行将微信小程序中定义的全局变量复用过来。

app.wxss==>app.acss公共样式:完全复用就好了。
3. 模板复制:
将微信小程序主目录下的pages/components/imgs及utils目录复制到支付宝小程序主目录下进行合并。

4. 接口请求的改造:
res.statusCode==>res.status
5. 模板文件名后缀修改:
所有页面和组件中的模板文件和样式文件后缀都需要修改,页面比较多的可以编写批处理修改。
- wxml==>axml
- wxss==>acss

6. 模板文件中需要替换的地方:
模板文件axml中,需要替换的主要有这些:
- bindTap-==>onTap
- wx:==>a:
脚本文件js中,需要替换的主要有:
- wx.==>my.
小程序开发工具中一键替换方法如下:

7. 不同的API的处理:
经过上边的改造,基本上对于框架类的东西都已经更换了,剩下的就是API方面的不同需要修改了。
对于小程序API,大部分都是相同的,可以说需要调整的API并不是很多。但基于各自内部不同的生态,所以在授权登录、支付这些方面自然会有所不同。对于这部分API的移植,就没有前边的一键替换那么方便了,你也不可能一个个把所有用到的API都去搜索下去做调整。最好的方法就是直接在小程序的运行中进行调试,通过调试来发现并调整需要更改的API。
对于这块儿的改造,就得好好利用console.log()了,如下图输出的是my.getAuthCode接口获取用户code值的返回数据,不同于微信小程序的code,支付宝的是authCode,所以才会有下边的报错,调整对应的代码就好了。

后端接口改造:
对于用户授权登录、支付等API的参数是需要后端返回的,因此这方面的代码就需要等后端相关接口改造完成之后才能正常调试了。
微信小程序快速移植支付宝小程序的更多相关文章
- 【小程序案例】支付宝小程序-MQTT模器,IoT设备通过WSS接入阿里云IoT物联网平台
支付宝小程序-MQTT模拟器通过WSS接入阿里云IoT物联网平台 小程序效果: 1. 准备工作 1.1 注册阿里云账号 开通阿里云账号,并通过支付宝实名认证 https://www.aliyun.co ...
- Mac小技巧:快速查看指定应用程序的所有窗口
我们知道在Mac中快速在系统所有程序中切换得快捷键为: cmd + tab 不过有时我们需要快速查看某一个程序的所有窗口,那又该如何呢? 以下方法在MacOS 10.12中测试成功! Mac默认该功能 ...
- 支付宝小程序开发之与微信小程序不同的地方
前言: 本文仅汇总微信小程序移植支付宝小程序过程中遇到的一些不同的地方,详细请参考官方开发文档. 网络请求: 对于网络请求,基本上改动不大,也就支付宝小程序没有responseType属性及响应码字段 ...
- 支付宝小程序和微信小程序的区别(部分)
支付宝小程序和微信小程序之间的互相转换 1.首先是文件名 微信小程序 wxss ------ 支付宝小程序 acss 微信小程序 wxml ------ 支付宝小程序 axml 2.调用方法前缀 微信 ...
- 支付宝小程序开发——rich-text富文本组件支持html代码
前言: 与微信小程序不同,支付宝小程序的富文本组件并不能直接支持html代码,如: 如上,支付宝小程序的富文本组件只支持数组类型,html代码需要使用 mini-html-parser 转换,具体用法 ...
- 支付宝小程序云开发(Serverless)
支付宝小程序云开发(Serverless) 博客说明 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢! 一.在支付宝账号里面开通小程序云服务 ...
- 如何让微信小程序快速接入七牛云
如果你确定用七牛运行小程序的话,给大家分享一个九折优惠码:61d1fd4d1 月 9 日 微信小程序正式发布,小程序终于揭开了它神秘的面纱,开发者对小程序的追捧更是热度不减.从小程序的热门应用场景来看 ...
- 小程序开发过程中常见问题[微信小程序、支付宝小程序]
目录 一.样式中如何使用background-image呢? 二.使用自适应单位rpx类似于rem,布局尽量使用flex布局 三.万能的{{双大括号,用于在模版中输出变量 四.你想要的基础组件和API ...
- 微信小程序快速开发上手
微信小程序快速开发上手 介绍: 从实战开发角度,完整系统地介绍了小程序的开发环境.小程序的结构.小程序的组件与小程序的API,并提供了多个开发实例帮助读者快速掌握小程序的开发技能,并能自己动手开发出小 ...
随机推荐
- Zeosdbo-Query使用
with DataModule1.Zlxz_zy_Query do begin Close; SQL.Clear; SQL.Add( ...
- 装饰者模式——Head First
一.定义 装饰者模式(Decorator Pattern)动态地将责任附加到对象上.若要扩展功能,装饰者提供了比继承更有弹性的替代方案. 二.类图 三.星巴兹饮料 //Component public ...
- web前端安全的三个关键点
一.浏览器的同源策略 同源策略:不同域的客户端脚本在未经授权的情况下不能读写对方的资源. 这里有几个关键词:域.脚本.授权.读写.资源 1.同域要求两个站点:同协议.同域名.同端口.下表展示了所列站点 ...
- U3D MemoryProfiler
MemoryProfiler Unity 5.3a4 has a new very lowlevel memory profiler API. It can tell you which object ...
- unity 4.6.1脚本解析出错,没有激活的勾,方法顺序出错
检查方法声明上的注释:如/**xx*/或/*xx*/改为//形式 没有激活的勾: 1.如/**xx*/或/*xx*/改为//形式 2.必须保留Start函数
- 打包制作 ANE
一.打包ANE 1.ios 准备文件: anePackager.bat aneswc.swc extension.xml flashAne.ane ioslib.a library.swf platf ...
- ReactiveX 学习笔记(16)RxPY
RxPY RxPY 是 ReactiveX 的 Python语言实现. # 安装 RxPY $ pip3 install rx Successfully installed rx-1.6.1 Basi ...
- RabbitMQ.Net 应用(1)
风浪子 概述 MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法.RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统.他遵循Mozilla Pu ...
- 【360】pandas.DataFrame、array、list 之间转换
pandas.DataFrame → array → list values 可以转成 array array.tolist() 可以转成 list >>> c 0 1 2 0 0 ...
- Oracle重建表空间操作实例
由于环境维护或者性能测试需要,经常需要对表空间进行重建操作.重建表空间操作主要分3中情况介绍,分别是业务表空间.临时表空间和回滚段表空间的重建. 重建业务表空间 由于业务规划要求,重建后的业务表空间名 ...