我们需要Redux for Hooks吗 和 2019 React conf 漫谈

前言

在学Redux之前,我其实用Vuex做过一些东西,关于Vuex,核心其实是三点,mutations, actions, states,在这里插入图片描述
对于Redux我们同样有一份类似的图:
我们需要Redux for Hooks吗 和 2019 React conf 漫谈_第1张图片
关于redux的内容这里不做太多讨论,因为已经有足够多的文章是来讲述这个东西的了,而这里我们既然使用Hooks,那么就来关注一下react redux hooks的特性。

有点乱,有什么区别?

大家要知道的是Redux并不是为React专有的,它同样也可以在Angular中使用,而为了更简单的在React中使用Redux,React-Redux是一套非常成熟的解决方案,我们或许更多见的使用的"connect""Provider"等写法都是在React-Redux中诞生的,他让我们更加有序的去在React中使用Redux。

而为了应对React Hooks,React-Redux又推出了关于Hooks的API,专门为了迎合Hooks相关的函数时编程。

而这是这篇文章所关注的。

我们需要React-Redux-Hooks吗?

或许见多了很多文章说,React Hooks的诞生是可以取代Redux的,这里我们首先讨论下这个问题。 虽然个人才疏学浅,但是首先我觉得Redux暂时是无可替代的,能被替代的或许是React-Redux,而React-Redux设计的初衷我觉得是为了更方便的连接Redux和React,就像ngrx做的那样,他们也不可能去取代Redux的作用。

那么我们还需要React-Redux-Hooks这个特性吗,使用很多文章说的"useReducer"和"useContext"不好吗?

这种问题见仁见智,或许Redux会因为Hooks的出现做出进一步的改变,因为hooks的出现势必会对未来的Redux产生一定的影响的,这些都还不好说。

目前社区更加倾向于写工具去用Hooks的方式迎合Redux的用法,包括Redux官方的HooksAPI,在React不太可能把dispatch等方法加入React 的核心库的情况下,这种为了更好的去使用Redux做出的妥协是目前最适合的。

当然Redux也是存在很多不足的,type safe或者store太大等问题,尽管这不是本文要讨论的,仍然有一些人在使用hooks的方式重新写东西来取代Redux,之前在知乎上看到的Reto等,其实也都是不错的尝试,估计几个月之内,也会出现比较成熟的方式来取代redux,效果怎么样就拭目以待了。

React Conf 2019

今年的React会推出啥新特性?去年的Hooks宣布了FB对于React未来的构建,今年的动静自然也小了些,我们这里主要看几点我觉得有意思的。

首先是FB宣布要构建自己的CSS in JS相关库,我们知道React把JSX带到大众视野之后,很多人看到了React对于CSS并未做太多封装,推出了一系列强化JSS的插件,如今让人感觉收效甚微,那么FB这一次又能做出什么成果呢?

关于graphql,会上还有关于基于数据驱动的relay的介绍,这个个人没什么了解,官方介绍看起来还挺有意思的:

Relay是一个JavaScript框架,用于构建由GraphQL支持的数据驱动的React应用程序,该应用程序从头开始设计,易于使用,可扩展,并且最重要的是具有高性能。它通过静态查询和提前代码生成来完成此任务。

有兴趣的同学可以去看看。

然后是一个叫做react-select的组件,星数很多,个人没看出有什么很厉害的地方,和JSS结合的很好?

别的的话再做补充,先到这儿。

你可能感兴趣的:(React,学习日记)