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.

JD Tech
JD Tech
JD Tech
Taro 1.0.0 Release: New Features, Multi‑Platform Enhancements, and Future Roadmap

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/cli

can 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.

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

TypeScriptReactTaroMini‑programMulti‑platform
JD Tech
Written by

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.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.