React Router 5 发布,更好地支持 React 16

栏目: 软件资讯 · 发布时间: 5年前

内容简介:时隔 2 年,React 的声明式路由组件 React Router 发布了第 5 个版本。 此版本侧重于稳定性和兼容性,带来了一系列改进与新特性,并且完全向后兼容 4.x。功能和改进很明显,但是没有破坏性变化,所以如果已经在使...

时隔 2 年,React 的声明式路由组件 React Router 发布了第 5 个版本。

此版本侧重于稳定性和兼容性,带来了一系列改进与新特性,并且完全向后兼容 4.x。功能和改进很明显,但是没有破坏性变化,所以如果已经在使用 4.x 版本,则可以在不改变代码的情况下直接使用 v5 版本。

$ npm install react-router
# or
$ npm install react-router-dom
# or
$ npm install react-router-native

v5 中最重要的改进是对 >= 15 版本的 React 完全兼容,并对 React 16 提供了更好的支持。

升级了 React 的 context API;消除了所有 <StrictMode> 警告;对捆绑基础架构进行了彻底检查,并对发布的所有绑定包进行了全面测试。

还为生产引入了预优化的 build,可以不用在构建脚本中手动将 process.env.NODE_ENV 设置为“生产”,更重要的是不会将路由器构建为 build 的一部分,团队已经在开发和生产模式中处理了这个问题。

导入方式也因此需要改变:

// Instead of:
import Router from 'react-router/Router';
import Switch from 'react-router/Switch';

// do:
import { Router, Switch } from 'react-router';

目前仍然支持前一种风格,但会发出警告。

此外,v5 简化并自动化了发布过程,从现在开始能够更频繁、更可预测地发布。

新特性方面,此版本的一个主要新功能是能够在 <Route path> 中使用数组,简化了操作:

// Instead of this:
<Switch>
  <Route path="/users/:id" component={User} />
  <Route path="/profile/:id" component={User} />
</Switch>

// you can now do this:
<Route path={["/users/:id", "/profile/:id"]} component={User} />

还带来了一些 bug 修复,包括支持 <Link innerRef> 中的 React.createRef,并支持在 <Route component> 中使用 React.forwardRef。

详情查看发布公告


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

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

HTML Dog

HTML Dog

Patrick Griffiths / New Riders Press / 2006-11-22 / USD 49.99

For readers who want to design Web pages that load quickly, are easy to update, accessible to all, work on all browsers and can be quickly adapted to different media, this comprehensive guide represen......一起来看看 《HTML Dog》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具