Taro Versions Save

开放式跨端跨框架解决方案,支持使用 React/Vue/Nerv 等框架来开发微信/京东/百度/支付宝/字节跳动/ QQ 小程序/H5/React Native 等应用。 https://taro.zone/

v3.6.13

9 months ago

特性

小程序

  • 优化 npm 包路径的获取,遵循原生小程序的规则,并提供 skipProcessUsingComponents 配置项 #14357

v3.6.12

9 months ago

特性

小程序

  • 新的混合原生打包模式, 编译页面时同时编译本地化组件,并共享同一套运行时,参看示例工程 examples/new-blended
  • 调整钩子 modifyBuildAssets 调用顺序 #14324

H5

  • 对齐小程序 connectSocket API 限制 #14292

修复

  • 修复输入框事件传入的函数不会更新 #14293
  • 修复button组件丢失warn
  • 修复瀑布流普通模式列表数错误问题 #14285

小程序

  • 修复 config 新增默认 clean 配置项导致的微信小程序插件编译失败的问题 #14262
  • 修复 usingComponent 不能引用 node_modules 下依赖的问题 #14325

alipay

  • 适配 my.alert 成功后的回调函数 #14267

tt

  • 支持自定义下拉刷新控件 #14247

H5

  • 修复h5模式下页面返回destroyed、onShow生命周期时序 #14303
  • 优化 fetch 参数传递 fix #14222
  • 优化 Image 组件懒加载并修复下拉刷新类名错误 #14297
  • 修复 useDeprecatedAdapterComponent 的组件路径
  • 优化路由改变时,关闭全屏图片预览 #14320

预编译

  • 修复 pnpm worksapce 使用了不同 Taro 版本时报错的问题 #14224
  • 修复多端文件解析在开启 prebundle 功能时报错的问题 #14123
  • 修复虚拟模块冗余调用 #14257

不兼容更新

RN

新版本的配置使用异步获取,metro.config.js 需要手动更新

const { mergeConfig } = require('metro-config')
const { getMetroConfig } = require('@tarojs/rn-supporter')

module.exports = (async function (){
  return mergeConfig({
  // custom your metro config here
  // https://facebook.github.io/metro/docs/configuration
    resolver: {}
  }, await getMetroConfig())
})()

v3.6.11

9 months ago

特性

  • 支持虚拟瀑布流组件 #12409
  • 虚拟列表能力优化
    • 支持 brick 模式
    • height / width 参数支持填入非数字宽高 #7738
    • 支持 onReachTop / onReachBottom 事件
    • scrollTo / scrollToItem 方法支持禁用 enhance 模式 #14162

修复

小程序

  • 修复递归模版 child 生成错误的问题
  • 修复 useTabItemTap 不触发的问题 #14170
  • 修复 react 插件在 Windows 环境下别名问题 #14236,by @TheKonka

H5

  • 修复 cache 导致的虚拟模块缺失问题 #14239
  • 优化虚拟列表 getItemStyleCache 方法性能

其他

  • 更新 @babel/runtime 最低版本至 7.21.5,by @smoothdvd
  • 更新全局配置和页面配置类型,by @TheKonka

v3.6.10

9 months ago

修复

小程序:

  • 修复小程序模板在调用 xs.a 函数时参数漏传的问题,by @xuanzebin

v3.6.9

9 months ago

特性

CLI

  • 编译配置文件的功能增强,如增加类型提示,支持使用函数等,详情请参考文档,by @bigmeow
  • 编译配置支持 output.clean 选项,#11032,by @bigmeow
  • 存在多端页面但是对应的多端页面配置不存在时,使用该页面默认配置,by @TheKonka
  • 默认模版增加单元测试目录
  • Webpack5 支持 imageUrlLoaderOptionemit & emitFile 属性,by @myl0204

小程序

  • 京东小程序添加 getTabBar API
  • 京东小程序支持插件编译功能

小程序性能

  • 去除 container 模版,提升模版运行速度
  • insertBefore 增加若干策略,优化尾部插入的性能

修复

小程序

  • 解决 Vue2 中,在 app 设置的 Vue.config.ignoredElements 不生效的问题,by @xujiujiu
  • 修复 hydrate 时报错找不到文本节点对应模板别名的问题,by @johnsoncheg
  • 修复存在多个相同 id 的节点时,事件对象的 target currentTarget 属性指向不正确的问题,by @CANntyield
  • 字节小程序支持 getAccountInfoSync API,#13957,by @wenfangdu
  • 优化获取节点的逻辑,增加其成功率
  • 修复使用 sentry-webpack-plugin 时报错,#13988
  • 修复支付宝小程序使用自定义 tabbar 在卸载时报错的问题,#14127
  • 修复 Taro.showLoading 显示 undefined 的问题,by @jeffreyzhang23

H5

  • 为部分不支持的 API 补充提示,by @smileying
  • 修复 Taro.chooseMedia,by @kong-dev
  • 修复调用音频实例的销毁方法时报错的问题,by @GauharChan
  • 修复 InnerAudioContextBackgroundAudioManager 出现错误时未触发 onError 的问题,#13945,by @tangbzai
  • 优化组件编译模式导出配置,#13958

CLI

  • 修复配置了 compiler 后项目启动失败的问题,#13996,by @TheKonka
  • 修复使用 pnpm workspace 时 react 应用出现的问题,by @smoothdvd
  • 修复 taro init 在设置了自定义模板源时未正确解析 zip 包的问题,#14038
  • 修复 Webpack5 开启持久化缓存功能后引起的一系列问题,#13462 #14203

RN

  • 修复父组件为 ClassComponent 时,子组件为 FunctionalComponent 时,子组件使用 Taro Hooks 不触发的问题,#14051,by @yechunxi
  • 修复单页面引入 react-navigation 导致体积过大的问题,#14079,by @yechunxi
  • Android ScrollView 默认设置 nestedScrollEnabled: true,#14093

Typings

  • 更新 Taro.request 的参数类型,#14173 #14174,by @TheKonka
  • 完善 previewImageshare-element 的类型,#14053,by @TheKonka
  • 完善微信小程序 Button 组件 open-type 属性的 getRealtimePhoneNumberagreePrivacyAuthorization 相关类型,#14180,by @TheKonka
  • 支付宝小程序新增 tradePay API 的类型,#14072,by @catmiao8
  • 增加 AI 推理、Skyline、短信、缓存管理、屏幕、deviceVoIP 等 API 的类型,by @smileying
  • 完善百度小程序 Button 组件的属性,by @SeaHaiWorld
  • Taro 插件类型支持泛型定义,by @bigmeow
  • 修复用户加密模块的类型错误问题,by @weikx
  • 补充字节小程序缺失的类型,#7200
  • 修复 Vue 事件名类型,#13516,by @agileago
  • 更新 chooseAddress API 的返回类型

v3.6.8

11 months ago

特性

H5

  • 支持配置页面滚动方式(全局滚动或局部滚动),by @tutuxxx
  • 新增 API:saveVideoToPhotosAlbumsaveImageToPhotosAlbumaddPhoneRepeatCalendar、addPhoneCalendarchooseMediagetVideoInfocanIUse

修复

  • 修复 Webpack5 启动报错:Invalid option from onResolve() callback in plugin "scanImports": "importer",#13767,by @yoyo837
  • 修复 Webpack5 开启 cache 功能后报 warning 的问题,#13798,by @saintwinkle
  • 修复 CSS 内静态资源路径 alias 不生效的问题,#13906

小程序

  • 修复抽取 sub-common 模块时没有输出 sourcemap 的问题,#13873,by @alexlees
  • 修复 Vue2 中使用 JSX 报错找不到 template 的问题,#13749,by @voidman2017
  • 修复 common 公共样式问题,#8168
  • 修复 Vue3 ref 引用的元素不能正确触发更新的问题
  • 修复 Input Textareacursor 属性初始值不正确的问题,#13809

H5

  • 修复 Taro.showModal 当浏览器退回到上一页面时不消失的问题和遮罩层滚动穿透的问题,by @sjhleo,#13833
  • 修复 MPA 模式下 onReady 钩子不执行问题,by @tutuxxx
  • 修复使用 React 框架时,classnames 赋值为空时错误判断导致的问题,#13781
  • 修复地图样式抖动和重复注入等问题,#13808
  • 修复 Picker 组件事件捕获问题,优化 columnChange 事件定义问题,并提示不支持的 mode,#13696
  • 优化 Checkbox 值获取类型问题,#13694
  • 修复 CustomWrapper 没有生成 DOM 节点的问题
  • 修复使用 ref 调用 InputTextarea 组件的 focus 方法失败的问题,#13935
  • 修复含副作用生命周期注册问题

@tarojs/plugin-html

  • 修复编译报错:@tarojs/plugin-html tried to access @babel/generator, but it isn't declared in its dependencies;,by @xty

@tarojs/plugin-http

  • 修复发送请求时未正确携带包含 httpOnlycookie 的问题,#13941,by @bigmeow

Typings

  • 增加 Vue3 Button 组件获取电话号码的示例,#11445
  • 补充 functionalPages 类型,by @PengBoUESTC

v3.6.7

11 months ago

特性

  • Picker 组件新增 textProps 属性,#12489,by @halodong

RN

  • RN 入口支持函数式组件
  • 入口组件支持 useLaunchuseDidShowusePageNotFound 生命周期 hooks

小程序

  • 消息机制支持 Symbol 类型作为事件名,by @TheKonka

修复

小程序

  • 完善 Taro React Reconciler 的事件处理,修复 InputTextarea 组件在受控情况下,value 值无法正常显示的问题,#13120
  • 修复 app 样式引用 common 样式的语法问题,#13764
  • 修复小程序设置自定义环境变量失败的问题,by @TheKonka
  • 完善 Taro.getAppInfo API

H5

  • 修复从普通页面返回 tabbar 页面时动画会消失的问题,by @Miaonster
  • 修复 InnerAudioContext 暂停后再播放没有继续上次进度播放的问题,#13840,by @liuchuzhang
  • 修改 Taro.request 传入 array 类型数据序列化问题,by @yclnycl
  • 修复 windows 下开启 multi router 后页面不显示的问题,#13134,by @biorz
  • 为部分暂不支持的 API 补充提示,by @smileying
  • Text 组件补充 userSelectspacenumberOfLines 参数支持,#13747
  • RichText 组件补充 userSelectselectablespace 参数支持
  • 修复设置 enablePullDownRefresh 后,onPageScrollonPullDownRefresh 方法失效的问题,#13782

RN

  • 修复 Taro.updateFile 的参数不传 formData 时报错的问题,#13513

Webpack5

  • 修复 prebundle 报错,#13767

@tarojs/plugin-mini-ci

  • 上传、预览失败时终结应用,#13761,by @Jeff-Tian

@tarojs/plugin-http

  • 优化事件属性的实现,#13824,by @bigmeow

Typings

  • 修复 Textarea 组件的类型定义,by @eiinu
  • LivePlayer 增加投屏接口,by @x1028

v3.6.6

1 year ago

特性

  • 新增 Taro.interceptorify API
  • 新增 Taro.getAppInfo API

小程序

  • 支付宝小程序支持使用自定义 Tabbar,#13610,by @TheKonka
  • 新增 getRenderer 方法获取页面渲染引擎类型,#13587
  • 新增 injectNewStyleProperties 运行时钩子,用于注入需要额外支持的 CSS 属性

CLI

  • 新增了全局插件和插件集配置,可以在没有项目 config 文件的情况下运行 Taro 相关插件,参考文档

babel-preset-taro

  • 支持修改 react presets 的配置

修复

小程序

  • 修复 virtual-list 导出问题,#13360 #13442 #13702,by @TheKonka
  • 修复微信小程序视频号相关 API 没有 Promise 化的问题,by @b1ngx
  • 修复 logInterceptor 在生产环境没有 Log 输出的问题,#11576,by @icksky
  • 修复 history.state 的返回不符合 web 规范的问题,#13723
  • 支持设置 aspectRatio 样式属性

H5

  • 修复 Swiper 组件衔接模式的 initial 值,#13589
  • 支持 Textarea 组件的 confirm 事件,#12911
  • 补充 cleanInterceptors 方法,#11339
  • 修复 Swiper 组件轮播显示问题,#13589
  • 修复 multi 路由模式跳转错误,#13685

postcss-pxtransform

  • H5 支持 px 单位,小程序支持 rempx 单位,#7637 #10212

@tarojs/plugin-http

  • 兼容 Webpack4,by @bigmeow

@tarojs/create-app

  • 修复 npm create 导致项目初始化后自动安装依赖报错的问题

Typings

  • 修复 View 组件 disableScroll 属性的类型定义,by @eiinu
  • 修复 getRandomValues 方法的类型问题,#13673
  • 修复 designWidth 类型

Perf

  • 优化小程序环境调用 getElementsByClassName 方法的性能

v3.6.5

1 year ago

特性

H5

  • 支持根据 html 模板自定义节点位置 in #13630

RN

  • ScrollView 组件支持透传 scrollEventThrottle by @peterczg in #13496

修复

小程序

  • 修复 vue 2 模版下 eslint-plugin-vue 版本问题导致的 npm 依赖安装报错 in #13620
  • 修复部分场景小程序热更新问题 in #13625

H5

  • 修补 tabbar 生命周期错误 in #13597
  • 修复 taroApis 导出错误 in #13596
  • 修复 ready 页面在部分场景下不触发问题 in #13622
  • 修复部分场景 wasm 错误 in #13625
  • 修复新版本部分环境下下拉组件未注册问题 in 13635

RN

  • 修复 socketTask 缺少字段 by @linhaobin in #13645

其他

CLI

  • 调整配置文件读取逻辑 in #13653 #13655

模板

  • 默认模板使用 React 函数组件 by @AdvancedCat in #13632

Typings

  • 修复 bluetooth-ble 回调错误 by @huang6349 in #13567
  • 完善 runner 中类型推断 by @AdvancedCat in #13594
  • ScrollView 的 type 参数调整为可选 by @linhaobin in #13642

v3.6.4

1 year ago

修复

H5

  • 修复 taro-loader h5.js 中 page 变量没有 get 方法的问题
  • 修复 component rollup 配置没有 external react 和 vue 等依赖的问题