Taro 发布1.3beta版支持hooks
-
2019年5月4日 Taro 社区各微信群均收到公告,告知 1.3 beta 版本已经发布,包含海量更新,欢迎大家进行试用,并反馈宝贵意见!
具体可以参考链接
2019年5月10日,司徒正美在 nanachi 微信群里表示,nanachi 已经支持部分 react hooks 了,如useState, useEffect, useContext,其他6个也可以添加,但它们好像在小程序中没什么用。
Taro 1.3 beta 版本新特性如下:
大家好~
在 Taro 项目组以及社区共同努力下,历时半年左右的开发时间,累计超过 1400 余次 Commit 的 Taro v1.3 beta 版本终于横空出世了!正所谓「宝剑锋从磨砺出,梅花香自苦寒来」,这是 Taro 历经考验最多的一个版本,是 Taro 遇到问题最多的一个版本,但也是 Taro 自诞生以来,包含特性最为丰富的一个版本。曾经,1.3 版本经历过数次延期,遭受过是否难产的质疑,但横跨半年的开发时间,我们只是一直在不断打磨,不断创新,而不是在虚延岁月。我们可能会迟到,但永远不会缺席!
版本特性
Taro v1.3 版本将为大家带来以下重要的特性:支持快应用开发
从 1.3 开始,Taro 将正式开始支持 快应用 开发,目前已经在 华为/小米 两个支持快应用的手机上进行测试,支持的快应用平台版本为 1010+。目前已经适配的组件与 API 情况如下:
组件库支持:checkbox/radio/image/input/label/progress/slider/switch/view/text/rich-text
API 支持:网络请求、路由 API、分享、界面弹窗、震动、本地存储、部分设备等相关 API
具体使用方式请参考 https://nervjs.github.io/taro/docs/quick-app.html需要注意的是,在 beta 版本中,由于快应用相关组件与 API 支持还不完善,所以建议不要直接使用 beta 版本开发直接开发快应用。
支持 QQ 轻应用开发
从 1.3 开始,Taro 将正式开始支持 QQ 轻应用 开发。全面支持 JSX 语法和 React Hooks
从 1.3 开始 Taro 支持了更多的 JSX 写法,包括但不限于,支持函数式组件、render 之外书写 JSX 等等,同时,更让人惊喜的是,新的版本带来了 React Hooks 的支持,大家可以通过如下两个例子进行学习使用:V2EX: https://github.com/NervJS/taro-v2ex-hooks
TodoMVC: https://github.com/NervJS/taro-todomvc-hooks
大幅提高 H5 性能和可用性
在 1.3 版本中,H5 的打包大小得到了进一步优化,同时 H5 端的 API/组件 数量和质量也得到了大幅地增长,让 H5 的转换更令人放心。同时,H5 对小程序的页面函数钩子如,onPageScroll/onPullDownRefresh/onReachBottom 等,也进行了同步支持,开发者不再需要自己去写平台区分代码来处理了。
Taro doctor 代码诊断
Taro Doctor 就像一个医生一样,可以诊断项目的依赖、设置、结构,以及代码的规范是否存在问题,并尝试给出解决方案
image多端同步调试
从 1.3 版本开始,项目编译后的结果不再直接放在 dist 目录下,而是会在 dist 目录下创建一个与编译的目标平台名同名的目录,并将结果放在这个目录下,例如编译到微信小程序,最终结果是在 dist/weapp 目录下,这样做的好处是,各个平台使用独立的目录互不影响,从而达到多端同步调试的目的。组件传参(props)系统重构
在 1.3 版本中,我们针对小程序端的 props 系统进行了重构,已经不再需要借助原生小程序的 props 来进行组件属性传递,这带来了以下几点好处:props 传递函数可以获取返回值,且函数名不再需要强制使用 on 开头
自定义组件支持 spread properties
各小程序组件生命周期执行获得统一,componentWillReceiveProps 生命周期表现一致
命令行工具(CLI) 重构
在 1.3 版本中,Taro CLI 使用 TypeScript 进行了彻底重构,为今后的插件化扩展,打下坚实基础,同时提供了 Node API 的方式进行调用,方便可持续集成系统进行集成使用。RN 端抛弃 Expo
众所周知,Expo 并不适用于国内生态环境,在 1.3 版本中,RN 端不再继续使用 Expo,而提供了自己的 SDK 与原生的壳子,方便用户进行扩展。支持开发小程序插件
从 1.3 版本开始,Taro 支持直接开发微信与支付宝小程序插件,可以从这里获得更多内容 https://nervjs.github.io/taro/docs/miniprogram-plugin.html支持小程序云开发
Taro 同时加入对了小程序云开发的支持,为小程序云开发提供了初始化模板,并且将小程序云相关的 API 进行了封装,方便开发者进行使用,可以从这里获得更多内容 https://nervjs.github.io/taro/docs/wxcloud.html以上就是 Taro 1.3 给广大开发者带来的优秀特性,目前 1.3 处于 beta 阶段,欢迎大家进行试用并提供宝贵意见,让我们一起将 Taro 变得更加好用。
如何升级
升级 Taro CLI
直接安装 beta 版本的 CLI$ npm i -g @tarojs/cli@beta
升级本地依赖
将 taro 相关的依赖版本号统一修改成 1.3.0-beta.1,然后删掉 node_modules,重新安装依赖即可。1.3 的任何问题,请在本 issue 下进行回复,我们会第一时间跟进处理。
-
快应用什么时候能正式支持?
-
@18629192718_p 已经支持了哦,更新到1.3版本即可