Taro多端开发权威指南:小程序、H5与App高效开发实战
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

前言

2017年1月9日,微信小程序正式上线。自此,这种触手可及、用完即走的小程序产品引起广泛关注。

在此后的一段时间里,数个产品均发布了自己的小程序平台,其中包括支付宝小程序、百度小程序、字节跳动小程序等。各小程序平台间存在或多或少的差异,如语法差异、规范差异等,对于开发者而言,开发各端小程序是非常浪费精力的,因为各端小程序之间存在的差异是少量的,我们希望编写同一套代码,在编译时抹平各端差异,从而提升开发效率,降低开发成本。

除了小程序,产品可能还需要在H5、iOS、Android端运行。能否在兼顾小程序的同时编译生成H5、iOS、Android应用呢?毕竟在React的生态里,有一个框架——React Native支持使用React开发iOS、Android应用。经过很多开发者的不停探索,催生出了很多优秀的多端开发框架,其中就有Taro。

Taro诞生已有两年多时间,在这两年多时间里,Taro一直保持高速成长状态。从1.x版本到3.x版本,Taro经历了大的版本迭代与重构,正是因为源码的不断重构与架构调整,才使得更多的开发者加入其中,共同迭代升级Taro,有越来越多的公司选择使用Taro开发多端统一应用。

多端开发“封神榜”上,一定会有Taro的名字。

阅读建议

本书从基础知识切入,循序渐进,由浅入深。在掌握Taro基础知识以后,你可以尝试使用Taro去开发一些小的案例,书中也提供了一些小案例用于理解某些开发中常用的知识点。最后通过开发一个闲置换App,带读者一窥从项目搭建,到需求评审与开发,再到性能优化,最终部署上线的整个流程。

本书作为市面上首本Taro开发参考书,首先需要覆盖绝大多数开发工作中所使用的知识点,将这些知识点穿成线。其次需要带读者一起了解Taro原理,知其然且知其所以然才能让我们在开发工作中游刃有余。本书一共12章,各章内容介绍如下:

第1章 介绍了Taro的诞生背景、基本理念及主要特性。同时介绍了使用Taro进行开发前需要掌握的ES 6常用语法知识、Taro脚手架及规范约定。学完本章,相信大家会对使用Taro开发多端应用有一个基本认识。

第2章 介绍了JSX语法基础。同时介绍了组件化开发基本思想、组件生命周期、组件中事件的处理,以及如何绑定事件、如何解决this指向性问题等。了解单个页面开发以后,我们可以尝试将多个页面有机组合,这时就需要使用路由功能了。路由系统将各个模块通过路径和路径参数编织成网,路由操作允许你在网的节点之间穿梭。最后以表单控件串联起了本章学习的重要内容,举一反三。

第3章 介绍了组件设计基本原则。介绍了组件关系、组件之间的通信即状态同步问题。还介绍了组件和服务端数据交互与通信使用的API,同时介绍了如何使用拦截器在请求发出前或响应到来后做一些特殊处理。最后介绍了Ref在开发过程中的使用方法。

第4章 介绍了项目中常用的两种集中状态管理方案,分别为Redux与MobX。在新版本的Taro中建议使用Hooks结合context管理状态。

第5章 介绍了Hooks相关知识。Hooks赋予了函数组件管理内部状态和处理副作用的能力,使得组件与数据得以拆分,同时解决了状态难以复用的问题。

第6章 介绍了如何使用Taro同步开发多端应用,开发之前需要根据项目具体需求和设计稿合理配置项目配置文件。开发多端应用过程中,可供选择的方案有3种,可根据模块开发需求选择合适方案。然后介绍了如何修改配置以支持多端同步调试与打包。

第7章 介绍了Taro UI的使用,使用Taro UI不仅能降低开发成本,还能保证多端样式统一。

第8章 介绍了Taro中较难理解但是颇有用途的一个特性——插件机制。插件机制提供给开发者众多能力,例如,自定义业务相关插件辅助业务开发、自定义命令拓展Taro命令行工具、自定义Hooks处理自定义处理逻辑,甚至可以借助该功能拓展编译规则,从而使Taro支持更多端应用的编译工作。工作中用好Taro插件机制能在很大程度上提高开发及构建效率。

第9章 介绍了Taro项目性能优化的知识。我们可以通过Prerender预渲染提升渲染速度,利用虚拟列表解决大数据列表的性能问题,同时可以自定义组件更新重渲染条件从而达到优化目的。还介绍了Taro多端开发的实现原理,通过讲解Taro 1.x源码,介绍了Taro的基本原理。

第10章 介绍了微信小程序、支付宝小程序、React Native的开发环境搭建的相关内容,通过Taro编译不同端应用以提升开发效率。

第11章 介绍了使用Taro开发H5、微信小程序、React Native端应用的流程,从项目搭建到多端适配,完整讲解了使用Taro开发多端应用的方法和需要注意的问题,最后介绍了不同端打包发布的流程,从0到1打造多端应用。

第12章 介绍了Taro的发展及如何使用Taro 3进行多端开发。

通过阅读本书,希望读者能对多端开发方案有一定认识,能够使用Taro开发多端应用。

读者反馈

本书作为市面上首本全面讲解Taro的图书,在写作过程中,我深感开创者的不易,因自身水平有限,书中难免会有疏漏,恳请读者指正。你可以通过邮箱flana_zhong@163.com与我联系,或者关注我的微信公众号“JavaScript全栈”私信我,看到反馈后我会第一时间回复。

示例代码下载

本书实战部分代码托管在GitHub上,访问地址为https://github.com/HeyiMaster/taro-book,源码仅供参考学习,建议结合书中源码片段学习。

致谢

我坚信成就自己最好的方式就是帮助他人。我乐于分享,无论是技术还是生活,在将我所掌握的知识、生活技能等通过文字或视频形式传递给他人的时候,我都非常开心。正是因为分享和开源,我有幸结识了Taro团队的很多小伙伴,他们为Taro付出了很多,牺牲了很多周末时间,推掉了很多个朋友聚会,挤压了陪伴家人的时间。同时我在想,为什么目前市面上还没有一本工具书介绍Taro,让更多开发者听到Taro的声音?

因为一直囿于文笔不好,担心写出的内容不能很好地将Taro的精华传授于读者,所以踟蹰不前。直到电子工业出版社编辑李秀梅老师找到我,给予了我很多鼓励,加上疫情在家无法外出,可以全身心投入写作,我才决定开始本书的写作。

在此,特别感谢Taro团队小伙伴老李、立哥、帅哥的答疑解惑,同时特别感谢电子工业出版社李秀梅编辑不厌其烦地纠正书稿中的错误。真心感谢你们,是你们的支持和鼓励让这本书得以面世。

最后,感谢我的父母,是你们含辛茹苦将我养育成人。也感谢我的妻子严霜,是你的支持与理解让我顺利完成写作。

读者服务

微信扫码回复:40906

◎ 获取本书配套源码资源

◎ 获取作者提供的各种共享文档、线上直播、技术分享等免费资源

◎ 加入本书读者交流群,与作者互动

◎ 获取博文视点学院在线课程、电子书20元代金券