- 快速开始
- JSX 介绍
- JSX+ 介绍
- 组件
- 事件处理
- 样式设置
- Hooks 介绍
- Driver 介绍
- 容器差异
- 工程介绍
- 目录结构
- 应用配置
- 应用入口
- 生命周期
- 路由管理
- 简介
- 语法约束
- Hooks
- 多端组件开发
- API 使用
- 静态资源引用
- 项目构建配置
- 页面配置
- 使用原生项目配置文件
- Rax 与小程序代码混用
- FAQ
- 更新日志
- 简介
- 环境变量与 Framework
- Weex Style 支持表
- Weex 组件
- Weex 模块
- 页面降级
- JS Service
- Bundle 解析
- 事件与手势
- 事件通信
- Weex 国际化
- Weex 常见问题
- 简介
- Document
- App Shell
- 代码分离
- 保存至桌面
- 渲染节点快照
- 预加载和预渲染
- 页面保活
- 缓存控制
- PHA 介绍
- 快速开始
- 编码指南
- 数据请求
- FaaS 接入: Now
- FaaS 接入: FC
- 与 Node 应用集成
- 数据请求
- 异步编程
- Rax 错误码
- 简介
- Lite 工程
- 云端一体化工程
- 插件配置
- 插件开发
- 插件简介
- build-plugin-rax-app
- build-plugin-rax-component
- build-plugin-rax-multi-pages
- build-plugin-rax-ssr
- build-plugin-rax-compat-react
- rax-plugin-app 0.1.0 升级
- 调试 Web
- 调试小程序
- 加载性能优化
- 渲染性能优化
- 从 Rax 0.x 升级
- 从 React 迁移
- API 概述
- render
- hydrate
- createPortal
- findDOMNode
- setNativeProps
- getElementById
- unmountComponentAtNode
- createElement
- cloneElement
- createFactory
- isValidElement
- Children
- memo
- Fragment
- createRef
- forwardRef
- useState
- useEffect
- useLayoutEffect
- useContext
- useRef
- useCallback
- useMemo
- useReducer
- useImperativeHandle
- PropTypes
- version
- ActionSheet
- Background
- Keyboard
- Animation
- Transition
- Toast
- Alert
- Confirm
- Loading
- Navigate
- ChooseImage
- Image
- Request
- Network
- File
- Env
- Device
- Clipboard
- AppState
- AsyncStorage
- Accelerometer
- 组件概述
- Text
- View
- TextInput
- Link
- Icon
- Image
- Picture
- Video
- ScrollView
- RecyclerView
- Waterfall
- Embed
- Countdown
- Canvas
- RefreshControl
- Slider
- Modal
- Weex JS Service
- Rax 长列表最佳实践
- 如何减小 Bundle Size
- Rax 0.x 开发工具
- Native 知识扫盲
- iOS 无障碍
- Rax 性能最佳实践
- 从零上手 Rax
- Rax v0.6 组件体验升级
- Rax v0.5 建立服务体系
- Rax v0.3 跨端生态建设
- Rax v0.2 基础能力建设
- 2016 淘宝双促中的 Rax
- Why Rax?
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
更新日志
项目所有的主要更新都将记录在本文档中。
[Unreleased]
- 优化拷贝 npm 模块链路
- 支持 createRef
- renderProps 支持
- 支持
forwardRef
useImperativeHandle
- 支持基于 Kbone 的运行时方案
2019-12-19
Added
- 支持 withRouter
Fixed
- 修复 JSX 参数绑定的问题
Changed
- 用户在 tabBar.items 中使用
path
参数配置路径,与 Web 端对齐,详情
2019-12-16
Added
- 支持第三方原生小程序组件库如 Mini AntUI 的引入使用
- 支持 class component 中使用 setState 传入回调函数
- 支持引用 npm 包内的具体文件,如 import add from 'loadsh/fp/add';
Fixed
- 修复在循环中使用逻辑非报错的问题
- 修复组件生命周期 componentDidMount & shouldComponentUpdate & componentWillReceiveProps 和 Web 不对齐的问题
Changed
- 组件的渲染及更新流程优化,避免了第一次渲染和更新渲染时可能出现的重复触发渲染的问题,性能提升 50%
2019-12-9
Added
- 新增支持
useLayout
- 新增支持 Typescript
- 新增支持通过多态组件库协议,实现通过组件库导出多个组件
- 新增支持组件文件既导出组件也导出多个变量
- 新增支持更随意的组件导出方式,以及可以导出函数包裹的组件,例如
export default handleComponent(TodoItem)
- 新增支持可以在组件文件中给组件实例添加属性,例如
TodoItem.propsType = {}
Fixed
- 修复
x-for
循环渲染中,使用逻辑非!
报错的问题
- 修复
state
更新的时候,nextState
为null
会报错的问题
- 修复使用
if
渲染时,使用return;
会报错的问题
- 修复多层循环渲染中,由于索引的变量名一样导致组件状态混乱的问题
- 修复由于小程序
onShow
的时候,当前页面栈仍是上一个页面的路由,导致页面生命周期注册错误的问题
Changed
- 优化组件渲染逻辑,区分首次渲染和更新渲染,避免组件 render 被重复触发
- 支持通过
if
渲染不用必须使用{}
包裹代码块
2019-11-21
Added
- 新增支持
useReducer
- 新增支持
props
的值为string
类型
- 新增支持
x-slot
指令,具体用法
- 新增支持页面级配置,详见页面配置
- 新增在
app.js
的runApp
函数传入第二个参数pageProps
,开发者可以从页面级组件的props
直接拿到pageProps
中的变量
- 新增在
rax-scripts
工程中开发微信小程序。已有工程需要更新依赖,然后在build.json
中的targets
字段中添加wechat-miniprogram
即可无缝使用
Fixed
- 修复某些核心 API 从
rax
中导出使用undefined
的问题
- 修复元素标签上属性为复杂表达式报错的问题
- 修复开发者 Hooks API 命名冲突导致报错的问题
- 修复开发者绑定的事件触发时第一个参数偶尔是
event
对象的问题
Changed
- 优化 Hooks 下的渲染逻辑,尽量避免重复渲染
2019-11-15
Added
- 新增页面级生命周期
onTitleClick
及对应 hooks 用法useTitleClick
- 新增支持在原生小程序项目里使用 Rax 开发的小程序组件
- 支持在 Rax 组件级工程中使用原生小程序组件
- 新增支持使用
import * as A from 'some-module'
的引入方式
- 优化命令行报错时的输出信息展示,错误能够定位至具体文件
- 添加开发模式下关闭 source map 的开关
- 新增命令行中小程序相关包的升级提示
Fixed
- 修复在
useEffect
中使用require('@weex-module/xxx')
报错的问题
- 修复循环渲染中,
key
值中含有临时变量会报错的问题
- 修复循环渲染中,
data[item]
,item
没有被替换成动态值的问题
- 修复在 Rax 工程中使用原生小程序组件时无法使用 npm 的问题
Changed
- 重新设计 Rax 组件实例
id
的规则,保证实例id
的唯一性,解决了多组件渲染状态混淆的问题
2019-11-07
Added
- 支持微信基础组件
- 支持循环渲染中事件绑定传参使用临时变量
- 支持微信小程序样式
- 支持使用
x-class
- 支持 sass/less/stylus 等 CSS 扩展语言
- 支持页面级生命期 hooks 用法:
usePagePullDownRefresh
,usePageReachBottom
,usePageScroll
,useShareAppMessage
,useTabItemTap
Fixed
- 修复微信小程序引入 npm 模块不能自动寻址
index
文件的问题
- 修复拷贝 npm 模块的时候
module
和main
优先级的问题
- 修复引用 Weex 模块导致报错的问题
- 修复页面生命周期被重复注册的问题
Changed
- 重构事件绑定的编译和运行时,支持各种常用的绑定事件方法
2019-10-24
Added
- 生产环境支持死码删除、代码压缩
- 开发环境支持 Source map
- 支持逻辑表达式渲染 JSX
- 支持通过 useRef 或 ref 属性赋值为字符串创建 ref
- 支持路由配置时构建页面到指定端
- 支持不拷贝 npm 包的构建模式
Fixed
- 修复组件 usingComponents 路径解析错误的问题
- 修复 Fragment 能力缺失的问题
- 修复父组件更新时子组件偶发性不渲染的问题
2019-09-26
Added
- Context 部分 API 支持
- 支持新的路由跳转
- 支持小程序生命周期
Fixed
- 修复 tnpm 安装依赖
2019-09-19
Fixed
- 修复多层循环渲染的问题
- 修复循环中样式无法使用临时变量的问题
- 修复 npm 安装依赖时版本冲突引发的文件拷贝问题
2019-09-05
Added
- 引用的 npm 文件进行 dead code 删除
Changed
- 长列表渲染优化
2019-08-29
Added
- cli 中增加不需要清屏的设置
- 支持 class component 的 render 方法中使用返回 JSX 的方法
Fixed
- 修复构建器在转换 tnpm 安装的 scoped npm 包时路径解析错误的问题
- 修复无法采用类似 import foo from 'xxx/lib/ccc' 的写法引入文件的问题
- 修复 file-loader babel 解析 jsx 报错的问题
2019-08-22
Added
- 支持微信构建
Fixed
- 支持 tnpm 产出的 node_modules 目录
- 修复 rax-scripts 适配的问题,增加构建默认值
- 移除引入的 Weex 相关的包
2019-08-15
Added
- 支持组件级别构建
2019-08-01
Added
- 支持使用 Fragment
- 支持 JSX+ 语法
- 支持循环渲染中的父子组件 props 传递
Changed
- 重构动态变量绑定
- 重构父子组件 props 传递实现
- 使用 webpack 重构 cli
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论