React 16.8 发布,Hooks的稳定实施

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

内容简介:昨天,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


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

查看所有标签

猜你喜欢:

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

Practical Vim, Second Edition

Practical Vim, Second Edition

Drew Neil / The Pragmatic Bookshelf / 2015-10-31 / USD 29.00

Vim is a fast and efficient text editor that will make you a faster and more efficient developer. It’s available on almost every OS, and if you master the techniques in this book, you’ll never need an......一起来看看 《Practical Vim, Second Edition》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

URL 编码/解码
URL 编码/解码

URL 编码/解码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具