React 16.8 发布,Hooks的稳定实施

栏目: 服务器 · 发布时间: 7年前

内容简介:昨天,React开发人员之一Dan Abramov宣布发布React 16.8,它附带了每个人都在等待的功能,“Hooks”。这个功能于去年首次登陆React 16.7-alpha,现在可以在这个稳定的版本中使用。这种React Hooks的稳定实现可用于React DOM,React DOM Server,React Test Renderer和React Shallow Renderer。 React DevTools以及最新版本的Flow和TypeScript也支持Hook。建议开发人员启用一个名为e

昨天,React开发人员之一Dan Abramov宣布发布React 16.8,它附带了每个人都在等待的功能,“Hooks”。这个功能于去年首次登陆React 16.7-alpha,现在可以在这个稳定的版本中使用。

这种React Hooks的稳定实现可用于React DOM,React DOM Server,React Test Renderer和React Shallow Renderer。 React DevTools以及最新版本的Flow和TypeScript也支持Hook。建议开发人员启用一个名为eslint-plugin-react-hooks的新lint规则,该规则强制执行Hooks的最佳实践。默认情况下,它也将包含在Create React App工具中。

什么是Hooks?

在React Conf 2018中,Sophie Alpert和Dan Abramov解释了React目前的局限性以及如何使用Hook解决它们。 React Hooks基本上是允许您通过功能组件“挂钩”或使用React状态和其他生命周期功能的函数。 Hooks具有各种优点,例如可以轻松地重用React组件,拆分相关组件,以及在没有类的情况下使用React。

React 16.8有什么新功能?

目前,Hooks不支持所有类的用例,但很快就会支持。只有两个方法,即getSnapshotBeforeUpdate()和componentDidCatch(),没有它们的Hooks API对应物。

在此稳定版本中引入了名为ReactTestUtils.act()的新API。此API可确保测试中的行为与浏览器中的行为更紧密地匹配。 Dan Abramov在一篇文章中建议包装代码呈现并触发对其组件的更新为act()调用。

其他变化包括:

  • useReducer Hook延迟初始化API得到了改进
  • React.lazy()中添加了对synchronized thenables的支持
  • 使用严格模式下的Hooks(仅DEV)渲染组件两次,类似于类行为
  • 在后续渲染中返回不同的Hooks时会显示警告
  • useImperativeMethods Hook被重命名为useImperativeHandle
  • Object.is算法用于比较useState和useReducer值

要使用Hooks,您需要将所有React软件包更新到16.8或更高版本。另外,React Native将从React Native 0.59版本开始支持Hooks。

更多详情请在他们的 官方网站上阅读React 16.8中的所有更新

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址: https://www.linuxidc.com/Linux/2019-02/156771.htm


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

UNIX网络编程

UNIX网络编程

史蒂文斯、芬纳、鲁道夫 / 杨继张 / 清华大学出版社 / 2006-1 / 98.00元

《UNIX网络编程》(第1卷)(套接口API第3版)第1版和第2版由已故UNIX网络专家W. Richard Stevens博士独自编写。《UNIX网络编程》(第1卷)(套接口API第3版)是3版,由世界著名网络专家Bill Fenner和Andrew M. Rudoff执笔,根据近几年网络技术的发展,对上一版进行全面修订,增添了IPv6的更新过的信息、SCTP协议和密钥管理套接口的内容,删除了X......一起来看看 《UNIX网络编程》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

MD5 加密
MD5 加密

MD5 加密工具