微信小程序快速移植支付宝小程序
移植背景:
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,并提供了多个开发实例帮助读者快速掌握小程序的开发技能,并能自己动手开发出小 ...
随机推荐
- Linux中的Wheel组的作用
原文:http://www.360doc.com/content/11/0505/10/4644186_114496525.shtml Linux中的Wheel组的作用(用自己的话翻译的) (原文) ...
- microsoft visual c++ 14.0 is required问题解决办法
方法有两个: 1.绕过pip,手动下载包 2.升级vc 详情参考:https://blog.csdn.net/amoscn/article/details/78215641
- golang web框架 beego
尝试了下,在go环境ready的情况下,花了2分钟完成了beego安装.项目生成和启动,效率还是不错的 1.安装: go get github.com/astaxie/beego go get git ...
- day01-MySQL介绍
一.MySQL的介绍 1.1.MySQL介绍 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司.MySQL 最流行的关系型数据库管理系统,在 W ...
- aaad
I remember the wonderful moment you appeared before me, like a fleeting vision, like a genius of pur ...
- happyxiaofan的程序员书单
转自 happyxiaofan 读书的看法 从15年7月至今,研究生期间读了不少书,读书让我学到了很多,也是提升技术能力的一个重要手段.可能很多人嫌读书太花时间,曾经的我一度也是这么认为的,觉得一 ...
- foreman自动化工具安装使用
简单的安装指导在官网上 官网地址为:https://theforeman.org/ 点击get started 找到 Installation 选择直接的发行版按照步骤一个一个来 需要注意的是,主机名 ...
- csredis base usage
Basic usage Whenever possible, server responses are mapped to the appropriate CLR type. using (var r ...
- 计算机网络协议包头赏析-IP
上次和大家聊了聊以太网的帧格式,本文会讲解IP数据报格式的定义. == 开门见山,先上图: 任何一个IP数据报都是由首部和数据两部分组成,而且首部基本是固定长度的,长度为20字节.这一点很重要,其他都 ...
- 15.Colection集合和Iterator接口.md
目录 1.Collection 1.1概念 1.1遍历方法-Lambda表达式 1.2遍历方法-Iterator接口 1.3使用Lambda方法遍历Iterator接口 1.4使用Foreach方法遍 ...