React 生态报告2021年第50周

更新于:2021-12-06

React 生态报告

Note

本站点包含很多可实时运行的Demo,在PC端阅读将获得更好的体验!

React

  • 新的 PR 关于 standalone app 和 DevTool 的连接

关于传递对象属性给自定义节点的 MR

这个 MR 非常的大,有 40+的 commits,所以细节解析没有那么快给出。这个 MR 的主题在于把对象属性传递给 custom element,如果你还不清楚什么事 custom element,请看MDN 的文档.

在 React 中,当我们尝试给一个 custom element 传递属性的时候:

<x-foo bar={baz} />

如果这个baz属性是对象,那么 React 会翻译成:

<x-foo bar="[object Object]" />

在曾经的 custom element 对于对象属性的支持确实一般,但是现如今的 custom element 对于对象属性的支持已经很棒,并且大部分都是使用一些框架进行开发的,这种情况下,将 custom element 和 React 进行结合变得非常不方便。而这个 MR 就是解决这个问题,在这个 MR 合并进去之后,相信在 React 中使用 custom element 将会变得更方便。

Redux & React-Redux

React-Router v6

React-Router v6 是 React-Router 的最新大版本,并且不兼容 v5 版本,是有史以来 React-Router 最大规模的更新,内核几乎完全重写。

V6 版本在 2021 年 11 月 4 日正式发布,而在发布之前,V6 已经经历了一年多的 alpha 到 beta 的过程,是一个经历过长期社区验证的发行版。关于 V6 我有太多的话想说,我在 2020 年就参照 V6 版本给 vue3 写了一个@bv3/router。毫无疑问我非常认可 V6 的 API 设计,而且他的代码量也比 V5 小了很多,不可谓我变强了更变秃了。

关于 React-Router V6 的赞美之词我我有太多可说了,所以我会在另外的文章来说,也会开一个 V6 的专属课程,就不在这里多说了。

  • 兼容 V5(hashType)配置,V5 的HashRouter支持#\开头的模式,而 V6 不支持,主要是因为 React-Router 以来的 history 在最新版中移除了默认的支持,这个 PR 尝试修复这个问题。

Follow Me

Jokcy的二维码