写点什么

React 0.14 候选版发布,添加包分割,Refs 语法等新特性

  • 2015-09-17
  • 本文字数:1059 字

    阅读完需:约 3 分钟

两个月以前,React 0.14 发布 Beta 版,目前,该项目正式发布候选(RC)版。React 0.14 将强制分离渲染引擎与关注点,简化无状态组件的声明,添加新语法 refs

React 0.14 将被分割为两个包:reactreact-dom。这一决定旨在强制分离 React 和它的 DOM 渲染引擎。分离后的react包含各种创建组件的方法,例如:React.createElementReact.createClassReact.Component、React.PropTypesReact.childrenreact-dom包含各种渲染方法,例如:ReactDOM.renderReactDOM.unmountComponentAtNodeReactDOM.findDOMNodereact-dom/server提供对服务器端组件渲染功能的支持。

Facebook 尝试通过这次分离实现两个目标:

  • 允许开发者自定义 DOM 渲染引擎;
  • 允许跨渲染引擎共享组件,例如:react-dom[react-native][3][react-art][4][react-canvas][5]以及[react-three][6]

第二个主要变化是,React 0.14 为内建的 DOM 节点引入了关注点引用(concerns refs)。在 React 0.13 中,如果你想通过引用(ref)访问一个节点属性,需要这样写:

复制代码
const nameNode = this.refs.name.getDOMNode();

在 React 0.14 中,内建 React 节点的引用是节点本身,所以代码可以简化为:

复制代码
const nameNode = this.refs.name;

引用节点的唯一作用是访问它的 DOM 节点,基于这个理念,这次的改变只针对内建节点,不会影响用户自定义的节点。与此同时,.getDOMNode()方法也被弃用并使用ReactDOM.findDOMNode进行替代。为此,Facebook 发布了一个名为 codemod 的脚本来帮助开发者完成这一转变。

此外,React 0.14 也在尝试简化有其它组件组成的无状态组件的声明方式,这与 React 0.13 启动时 Facebook 工程师所陈述的如出一辙:

不幸的是,我们不会在 React 中针对 ES6 类语法提供 mixin 支持。那与我们使用符合语言习惯的 JavaScript 的观念相违背。[…] 我们同样会开始设计一个新的组合 API,可以不借助 mixin 简化常见的任务。

React 0.14 中的新语法将允许使用props作为参数并返回渲染的元素:

复制代码
var Aquarium = (props) => {
var fish = getFish(props.species);
return <tank>{fish}</tank>;
};

React 0.14 还会弃用一些方法,例如:this.getDOMNode()setPropsreplaceProps等。此外,React 0.13 中所有的弃用警告全部转变为错误抛出。

可以通过npm安装 React 0.14:

复制代码
npm install --save react@0.14.0-rc1
npm install --save react-dom@0.14.0-rc1

也可以访问 React 的 Github 仓库通过 bug tracker 来提交 issue。

查看英文原文: React 0.14 Hits Release Candidate, Adding New Package Split, Refs Syntax, and More

2015-09-17 19:002572
用户头像

发布了 63 篇内容, 共 133.5 次阅读, 收获喜欢 38 次。

关注

评论

发布
暂无评论
发现更多内容

2024深圳电子信息展

AIOTE智博会

HashMap 底层是如何实现的?

做梦都在改BUG

Java hashmap

Exposure X7 Bundle下载|专业的照片处理插件套装

Rose

滤镜插件 Exposure X7 Bundle下载 Exposure X7中文版

弯道超车!阿里高工新产Java面试速成指南,面试骚操作都在里面了

做梦都在改BUG

Java java面试 Java八股文 Java面试题 Java面试八股文

真香!阿里最新出品Java面试核心讲(终极版),Github已星标50K

做梦都在改BUG

Java java面试 Java八股文 Java面试题 Java面试八股文

2023最新版互联网Java高级工程师面试八股文出炉!面面俱到,太全了

架构师之道

编程 java面试

内部消息!阿里首次10亿级并发系统设计文档,Github都为之低头?

Java你猿哥

架构 ssm 高并发 并发系统设计 并发系统

PoseiSwap以2500万美元估值,再获新一轮融资

西柚子

阿里P8整理的《百亿级并发系统设计》实战手册,实在是太香了

程序知音

Java 高并发 java架构 Java进阶 后端技术

OKX和UniSat联手革新比特币区块链上的BRC-20

币离海

原生Mac视频下载器Downie4许可证下载v4.6.17

Rose

Mac 视频下载工具 Downie 4 下载 Downie4许可证 Downie 4 Mac版 Downie 4中文版

太爆了!阿里最新出品2023版JDK源码学习指南,Github三天已万赞

Java你猿哥

Java 源码 jdk 多线程 jdk源码

小白白也能学会的 PyQt 教程 —— 图像类及图像相关基础类介绍

繁依Fanyi

Python PyQt

JDK源码怎么学?看这篇文章就够了!

Java永远的神

Java 程序员 多线程 jdk源码 架构师

卷起来了!阿里最新出品“微服务全阶笔记”,涵盖微服务全部操作

做梦都在改BUG

Java 架构 微服务 Spring Cloud spring cloud alibaba

PoseiSwap以2500万美元估值,再获新一轮融资

股市老人

神界原罪2游戏下载|DLC终极版|Mac游戏专区

Rose

神界:原罪2 神界原罪 Mac游戏 神界原罪 破解版下载

2023最新最全的Java面试八股文小抄开源!带你摸熟 20+ 互联网公司面试考点

采菊东篱下

Java 面试

JVM调优神器,运用 Arthas 释放 Java应用性能的全部潜力

做梦都在改BUG

Java JVM 性能调优 Arthas

单例模式:确保一个类只有一个实例,提高程序的可维护性和可扩展性

Jack

ehviewer苹果下载版本2023最新版本

ehviewer

EhViewer

从源码分析可重入锁(ReentrantLock)

做梦都在改BUG

Java 源码 多线程 ReentrantLock

Mac强大音频采样器Kontakt 7 激活版

Rose

mac音频采样器 Kontakt 7激活版 Native Instruments Kontakt 7 mac下载

Mac平台上的条形码生成工具分享~

真大的脸盆

Mac Mac 软件 条形码生成工具 条形码软件

Java 创建一个大文件

HoneyMoose

魔兽争霸3冰封王座中文下载_冰封王座 mac下载_解除8M地图限制

Rose

魔兽争霸3 冰封王座 Warcraft III Mac游戏下载

5个编写高效Makefile文件的最佳实践

小万哥

c++ Linux 程序员 面试 后端

华东手机银行用户经营洞察2023

易观分析

金融 手机银行

肝完阿里最新Java并发编程全优笔记,我成功晋升公司架构组

做梦都在改BUG

Java 并发编程

React 0.14候选版发布,添加包分割,Refs语法等新特性_JavaScript_Sergio De Simone_InfoQ精选文章