Taro 1.0.0 Release: New Features, Multi‑Platform Enhancements, and Future Roadmap
The article announces the official 1.0.0 release of the Taro multi‑terminal development framework, detailing its evolution from early versions, new component architecture, extensive mini‑program ecosystem support, performance optimizations, richer JSX and TypeScript capabilities, React Native conversion, UI library improvements, and a comprehensive roadmap for future features.
Taro, a multi‑terminal development framework launched by JD's "Aotu Lab" in 2015, originally provided Web front‑end, mini‑program, and H5 development capabilities for JD's e‑commerce platforms. On 2018‑06‑07 the team open‑sourced the framework, which uses a React‑style development model to build applications that run on WeChat mini‑programs, Web, React Native, and other platforms.
After three months of intensive iteration, the team released over 70 regular versions and more than 20 beta versions of Taro 1.0.0. The stable 1.0.0 release retains the strengths of previous versions while adding richer features, improved mini‑program/H5 conversion, and official React Native support.
New Mini‑Program Component Model
Early Taro used the <template /> tag to implement componentization, which caused bugs and high maintenance costs. The new approach adopts native mini‑program components, eliminating the previous template‑based limitations and providing a more robust, performant, and extensible component system.
More robust componentization on mini‑program side
Reduced framework‑induced performance overhead
Leverages official component model for future extensions
Full Mini‑Program Ecosystem Support
Taro 1.0.0 now allows direct usage of third‑party mini‑program component libraries such as echarts‑for‑weixin, iview‑weapp, vant‑weapp, and wxParse, and any library that follows the native mini‑program specification can be imported.
Mixed Code Between Taro and Native Mini‑Program
Developers can mix native mini‑program code with Taro code, facilitating gradual migration of existing mini‑program projects to Taro.
Sub‑Package Loading and Plugin Integration
Sub‑package loading is supported by adding a subPackage field in app.js. Example configuration:
import Taro, { Component } from '@tarojs/taro'
class App extends Component {
config = {
pages: ['pages/index', 'pages/logs'],
subPackages: [{
root: 'moduleA',
pages: ['pages/rabbit', 'pages/squirrel']
}]
}
}Plugins can be referenced via the usingComponents field, e.g.:
import Taro, { Component } from '@tarojs/taro'
import { View } from '@tarojs/Components'
class PageA extends Component {
config = {
usingComponents: {
'hello-component': 'plugin://myPlugin/hello-component'
}
}
render () {
return (
<View>
<hello-component></hello-component>
</View>
)
}
}Mini‑Program setState Performance Optimization
Previously, setState wrapped setData and sent the whole data object, causing heavy JSON serialization and UI lag. Taro now performs a data‑diff before calling setData, updating only the minimal changed paths, e.g.:
// Before optimization
this.$scope.setData({ a: [1,2], 'b.x.y': 10 })
// After optimization
this.$scope.setData({ 'a[0]': 1, 'a[1]': 2, 'b.x.y': 10 })Richer JSX Syntax Support
Taro continuously expands JSX capabilities to match React, including Ref support, this.props.children, inline functions in loops, variable JSX, complex if‑else, complex expressions in attributes, object‑style style, and automatic state pruning.
React Native Conversion Support
Version 1.0.0 adds official React Native conversion, built on Expo. Development commands are similar to other targets, and style handling follows the limited CSS subset of React Native.
Enhanced TypeScript Support
@tarojs/clican scaffold TypeScript projects
All component definitions are typed via @tarojs/components Full API typings in @tarojs/taro Typed Redux and UI libraries ( @tarojs/redux, taro-ui)
Build system now uses the native TypeScript compiler, supporting all TS syntax
H5 Conversion Optimizations
Bug fixes and a more robust routing system improve H5 stability, and the Webpack configuration is now exposed for custom tweaks.
Developer Ecosystem Improvements
Taro introduced a UI‑library packaging command ( taro build --ui) and launched the first cross‑platform UI library, Taro UI, initially supporting WeChat mini‑program and H5, with React Native support forthcoming.
Future Roadmap
Convenient testing and diagnostics
Simultaneous multi‑platform debugging
Reverse conversion from native mini‑program/H5 to Taro code
Alignment with upcoming React features
Fast‑app, Alipay, and Baidu mini‑program support
Visual drag‑and‑drop multi‑platform builder and industry templates
The article concludes with usage cases, community growth, and a call to follow JD Technology’s public account for more updates.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
JD Tech
Official JD technology sharing platform. All the cutting‑edge JD tech, innovative insights, and open‑source solutions you’re looking for, all in one place.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
