【Copy攻城狮日志】借助Taro暴改Nideshop实现电商支付宝小程序雏形

taro.png
↑开局一张图,故事全靠编↑html

从一个需求提及

做为底层的程序猿,哦不,我连猿都算不上,混的好的叫码神,混得通常的叫码农,混得有点差的叫码畜,混得极差的,就像我这样的,叫码渣。去年,2018年年末,12月份,运营的大佬提出了想作电商类支付宝小程序的想法,需求很简单:作一个本身的商城,上架到支付宝小程序应用市场。一句话,简单明了,需求很明确啊,可这句话对我来讲,要实现的难度,比起李白上蜀道还难,比难于上青天还难。细细一想,作商城,得有后台管理系统吧?得有支付系统吧?得有订单管理等一系列业务支撑的后台吧?我一小小的前端,自己业务基础又差,天天上班8小时划水10小时,居然让我独自完成一个电商支付宝小程序,哈哈哈哈哈。不过,原本没作实质性项目的我,怎么会畏惧,怎么能退缩,生死看淡,不服就干!谁给个人自信?开源社区啊!做为“资深”的Copy码渣,接到任务我就在github开始寻符合需求的demo,皇天不负有心人,我把github翻了个遍,收获寥寥无几,各位大佬有啥支付宝小程序开源的项目请必定推荐给我,Copy选不中对象,就没法愉快地进行Paste。为了快速交付,通过对比选用@tumobi大佬的Nideshop“全家桶”,因而就有了此次借助Tarotaro convert转化微信小程序为支付宝小程序的经历。在我看来,我写不出如此出色的开源项目,假若我能借助这些项目快速完成本身的工做,享受开源带来的乐趣,对于现阶段的我而言,足矣!(绝逼不敢相信,从业多年的程序员依旧是这么low!)
taro.png
(图片来源于网络)前端

环境准备

工欲善其事必先利其器。9102年了,还有谁在用notepad写代码?固然,对于咱们前端而言,谁的电脑没装个nodegitvscode之类的软体?若是您还没装的话,赶忙装吧,装完您就会嘿嘿嘿,对于我而言没有ndoe我没法工做,没有前端开发环境,我就不快乐。
图片描述
(图片来源于网络)node

  • 在您的平台上下载 Node.js 源码或预编译安装包,而后便可立刻进行开发。去下载
  • git--distributed-is-the-new-centralized。去下载
  • 小程序开发者工具定位于「一站式小程序研发工具」,专门为小程序开发打造,提供了项目管理、编码、调试、真机测试等功能。去下载
  • 其余的好像也没啥了,当年好像个人还装了Python|jJava|Android等环境,那是2016年的事了追忆,如今看来很傻很天真,其实不必。

Copy进行时

Taro 能够将你的原生微信小程序应用转换为 Taro 代码,进而你能够经过 taro build 的命令将 Taro 代码转换为对应平台的代码,或者对转换后的 Taro 代码进行用 React 的方式进行二次开发。以前一直在期待taro的这个功能,虽然不会React,也要尝试一下,也但愿经过这些实践更加了解React并好好学习,从我接触的内容来讲,React是前端开发必备的技术栈。git

Taro安装

/** Quick Start With NPM Or Yarn **/
        $ npm install -g @tarojs/cli
        $ yarn global add @tarojs/cli

nideshop-mini-program下载

git clone https://github.com/tumobi/nideshop-mini-program.git
    cd nideshop-mini-program

转化为taro

taro convert

经过以上步骤能够获得一个taroConvert的文件夹,就算暂时成功的了。
clipboard.png程序员

安装依赖

cd taroConvert
npm i

对于大多数前端项目来讲,现阶段不可避免的问题是可能一个不算复杂的项目会依赖上百个npm包,也正是由于这些包,大大解放了生产力,必定程度上提升了开发效率。固然,如同硬币有两面,伴随着便捷高效的同时也带来了必定的安全风险。可能大厂都是本身造轮子吧!
clipboard.pnggithub

打包成支付宝小程序

npm run build:alipay

理想状态是可直接打包成dist的,but……
接下来就捋一捋存在的问题,为何要手动修改一些问题?npm

为何要暴力修改

首先回到taro的官方文档看下 taro convet会遇到哪些坑小程序

  • 在小程序 IDE 显示 _createData 错误☞了解
    这里咱们好像暂时没遇到这个问题,也不知道是哪一个小程序IDE会有如此问题,先忽略了。
  • 转换 wxParse 报错不存在文件☞了解
    这个问题咱们要及时改正,在执行taro conver前先把wxParse.wxml中46行到128行的wxParse1修改成wxParse0
  • 不支持 relations 和 Behavior了解
    这个问题咱们代码里好像没有这些组件,暂时忽略
  • 转换 wepy 文件不成功了解
    这个问题咱们确定不存在,由于这个项目没有使用wepy,继续忽略。

如今看来,以上问题貌似都不存在,那么咱们先回到这个报错
clipboard.png
凭我多年的copy经验,必定是文件不存在或者文件引用路径有问题。不慌,对比了原文件taro convert以后的taroConvert目录里边的wxParse,的确发现了小问题:wxParse目录下的文件缺失,除了wxParse.js过来了,其余的都没有被转换。那就暴力一回,使出个人Copy大法,手动转换过去,并修改几处引用的相对路径,继续build。
接下来,在支付宝小程序开发者工具中打,不出意外能跑起来一个电商支付宝小程序雏形。
github地址☞☞nideshop-alipay by taro convert微信小程序

以上是我这个Copy攻城狮对使用taro convert转换原生微信小程序为支付宝小程序的一次微不足道的实践。安全

相关文章
相关标签/搜索