前端周热点98: React 18 RC2, Framer Motion, 3D Avatar, Parca, React-Native, Solito

534 阅读5分钟

React

How to Upgrade to the React 18 Release Candidate

React 18.0.0-rc.2 已经发布 (可以使用npm tag @rc). React团队发表了一篇博文 (+ 🧵 thread) 让我们为这个新版本的到来做好准备。它包括新的并发功能,我们可以逐步采用这些功能。

他们鼓励我们测试已发布的rc版本以检测最新的潜在错误,记录了主要的api和行为变化并提供了相当完整的升级指南。还有一个关于各种新的API的简要介绍。

直接阅读这个帖子,它包含许多有趣的细节。就我个人而言,我发现的概念是Strict Effects 以及 composants现在支持渲染undefined.

Delightful React File/Directory Structure

Josh Comeau的互动文章,介绍了他组织React应用的文件结构选择。强烈建议:他特别解释了为什么他更喜欢按类型而不是按功能分组文件。我不一定同意所有的东西,但它仍然是一个有趣的读物,有一些很好的论据。

Everything about Framer Motion layout animations

交互式文章,介绍了用Framer Motion制作的布局动画。介绍得非常好,有很多例子。我非常喜欢带有共享布局动画的标签的例子:API非常直观,我不知道有这么简单。

拓展阅读:

React-Native

An update on the New Architecture Rollout

Nicola提醒说,新的架构即将到来,并介绍了为社区做准备的不同举措:

Solito

Fernando Rojo经常推动跨平台领域的创新(也见MotiDripsy)。Solito通过提供React-Navigation和Next.js之间共享的导航基础,使网络和移动之间共享更多的代码成为可能。他在这方面已经工作了一段时间了,这不是第一次迭代。它还提供了一个 monorepo的例子来让你快速入门。

Flutter is better than React Native*

*...在所有不重要的方面 😄

Jamon意识到Flutter在很多方面都很好(DX、CLI、e2e测试、升级、性能...)。他很公平地介绍了两个框架的利弊。没有明显的赢家。在一些重要的方面,Flutter很难与之竞争:网络支持、共享代码和知识,以及招聘规模。

Flutter Web vs HTML, CSS & JS: Performance Comparison

对于React-Native开发者来说,这很有趣(也和上面的文章有关),因为它强调了其竞争对手Flutter在支持网络方面的局限性(React-Native-Web在这方面运作良好à)。对于内容网站来说,Flutter web不是一个好的选择,但对于较重的web应用来说,仍然是一个好的解决方案。请注意,React-Native-Skia在网络上也会有类似的权衡。

拓展阅读:

其它

A Proposal For Type Syntax in JavaScript

😱 微软正在进行一项 TC39提案(第0阶段),在TypeScript的启发下,为JavaScript语言语法带来类型注释(没有enums, namespaces 等)。

浏览器将简单地忽略这些类型注释,不做任何类型检查,所以TypeScript(或其他类型检查器)仍然需要。

这在开发中很有意思:我们可以直接执行TypeScript代码,而不需要在浏览器中进行任何转换。在生产中,我们会继续捆绑代码,因为最小化和删除类型仍然有用(见Ryan Cavanaugh对最小化的比喻)。

也请看专门的 提案网站

拓展阅读:

image

专栏同步自This Week in React(经作者授权许可),旨在分享当周热点内容、知识,主要关于React 技术栈,也会包含前端业界的其它动态

原专栏网址:www.getrevue.co/profile/thi…

github同步地址:github.com/react-shari… (求个小星星❤️)

备注:长期招募合作小伙伴