在距离 Taro 1.1 发布 以后一个月,经历了 500 屡次提交和 17 个预览版本的迭代以后,咱们有信心在今天发布 Taro 1.2 正式版。css
Taro 1.2 比起 Taro 1.1 和其它的小程序开发框架,增长了许多首次在小程序框架上实现的功能,这些功能包括但不限于:html
$ taro convert
复制代码
Taro 就会把转换好的代码生成在根目录下的 taroConvert
文件夹。转换后的代码是高可读性的 JSX 代码,没有额外的庞大组件库开销。你能够轻易地进行二次开发,或者直接将这些代码经过 taro build
命令生成任意 Taro 已经支持平台的应用。git
咱们已经尝试使用 taro convert
成功转换了四个 GitHub 上最热门的开源微信小程序应用,它们转换以后都表现良好:github
taro convert
不单单能支持转换微信小程序应用,它还能转换微信小程序第三方组件。例如 wxParse 通过 taro convert
编译以后还能突破原有只能解析 11 层 HTML 嵌套的限制,理论上能够解析无限层 HTML 嵌套。npm
更多详情能够访问文档 nervjs.github.io/taro/docs/t… 了解更多。redux
# npm script
$ npm run dev:tt
$ npm run build:tt
# 仅限全局安装
$ taro build --type tt --watch
$ taro build --type tt
# npx 用户也可使用
$ npx taro build --type tt --watch
$ npx taro build --type tt
复制代码
选择字节跳动小程序模式,你须要下载并打开字节跳动小程序开发者工具,而后在项目编译完后选择项目根目录下 dist 目录进行预览。小程序
相应地,Taro 的平台标识(process.env.TARO_ENV)也增长了新成员tt
,表明字节跳动小程序。微信小程序
在 Taro 最先开源的时候咱们就支持了 SCSS
、 LESS
和 Stylus
,而在 Taro 1.2 中咱们百尺竿头更进一步,给社区带来了 JSX 的好伙伴:CSS Modules。bash
对于 Taro 而言支持 CSS Modules 有着重要的意义。Taro 在 1.0 的时候已经支持组件的 style
传入 JavaScript 对象,支持了 CSS Modules 以后组件的 className
也能作这点——这意味着 Taro 彻底能够作到 JSX 的一项特性:「Everything in JavaScript」。同时,经过编辑器的自动补全和校验功能,开发者不再用担忧 CSS 类误输入和 CSS 类的命名问题。微信
你能够查阅文档 CSS Modules 的使用 找到 CSS Modules 的开启方法。
CSS Modules 的支持主要由 Taro 社区的我的开发者 @MrKou47 (MrKou47) 开发,感谢他的贡献。
在小程序应用变得日趋复杂的今天,愈来愈多的开发者选择使用独立的状态管理工具。在 Taro 1.1 你能够选择 Redux 的体系的 redux-thunk
、dva-core
、redux-saga
等工具。在 Taro 1.2 咱们又带来了 taro-mobx
。
在 Taro 中使用 MobX 很是简单,你能够经过 taro init <your app>
命令建立一个全新的 MobX 模板项目。也能够查阅 使用 MobX 文档将 taro-mobx
接入已有项目。
MobX 的支持主要由 Taro 社区的我的开发者 @nanjingboy (Tom Huang) 开发,感谢他的贡献。
面对社区里给力的我的贡献者,Taro 官方团队也没有闲着。在 Taro 1.2 开发期间经过 commit 关闭了 169 个 issue 的同时,咱们还披星戴月带来了更多特性。其中值得一提的是:
switch-case
中,并支持 if-else
和 switch-case
的多重嵌套你能够经过 CHANGELOG 查阅完整的功能迭代纪录。
Taro 1.2 最为激动人心的功能显然是「微信小程序转 Taro」 功能,经过这个功能已有的微信小程序应用能转化更好维护的 Taro(类 React) 代码,也能把 Taro 代码转化为多端应用。
但更重要的是,本次 Taro 1.2 更新的两个核心功能点均由我的开发者贡献——这彻底体现了 Taro 社区的活跃、强大和开放。咱们也会长期地维护与社区开发者们的关系,与开发者们一同成长,互利互赢。这也是 Taro 选择开源的意义所在。
若是你有任何想法,或者没有想法,Taro 都很是欢迎你来吐槽或观光: