ReactJS:正确处理用户登录的数据?

时间:2018-03-29 20:36:55

标签: reactjs

因此,目前,我们发送API调用以获取用户身份验证数据。用户ID,客户ID等......

然后我们将此数据传递给redux并通过connect()mapStateToProps将用户数据加载到React路由器......

然后每条路线获取此用户数据并通过道具将其传递给渲染的组件......

然后,在我们的许多组件中,我们使用用户数据进行更多的API调用。

但是,大多数情况下,此数据显示为空对象{}

最好通过React Router将这些数据传递给组件,还是应该从每个需要用户数据的组件上获取redux和mapStateToProps的数据?

1 个答案:

答案 0 :(得分:2)

我会使用mapStateToProps或容器将商店中的信息传递给需要它的组件。

尽管这可以被认为是主观的,但是使用容器而不是从路由器传递道具有一个真正的优势:通过正确使用容器,您可以将组件传递给它们所依赖的属性,而不是其他任何东西,因为任何其他属性都通过了通过不会真正影响这些组件呈现或行为方式的组件可能会导致不必要的呈现。使用connect,您可以在元素树中的任何位置“注入”商店信息,但是使用路由器,您必须将其从组件传递到组件。