Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 在用户操作后重新呈现react组件_Reactjs_Redux - Fatal编程技术网

Reactjs 在用户操作后重新呈现react组件

Reactjs 在用户操作后重新呈现react组件,reactjs,redux,Reactjs,Redux,我有一个基本的工作列表,大概每页20个元素,每个元素都有like图标,根据db的数据,我会用红色或灰色填充它,实现起来很简单,但如何做好呢?我的意思是,当用户点击like按钮时会发生什么?在我看来,我必须进行redux调用,以确保我将在db中更新这个值,但在前端我应该做什么呢?我是否应该再次从db获取整个列表并重新呈现整个组件?或者我必须自己更改like的值?仅仅为了显示like图标而更新整个组件是个坏主意。因此,您可以在这里做的是,当用户单击like按钮时,更新特定可重用组件的状态,并调用re

我有一个基本的工作列表,大概每页20个元素,每个元素都有like图标,根据db的数据,我会用红色或灰色填充它,实现起来很简单,但如何做好呢?我的意思是,当用户点击like按钮时会发生什么?在我看来,我必须进行redux调用,以确保我将在db中更新这个值,但在前端我应该做什么呢?我是否应该再次从db获取整个列表并重新呈现整个组件?或者我必须自己更改like的值?

仅仅为了显示like图标而更新整个组件是个坏主意。因此,您可以在这里做的是,当用户单击like按钮时,更新特定可重用组件的状态,并调用redux来更新数据库,以更新列表的存储方式?在redux? 我假设每个项目都应该有一个
liked
属性,即
true/false

因此,当您单击“like”按钮时,您必须发送一个操作来调用后端以更新数据库,并在Redux存储中切换此布尔值。(顺便说一句,Redux不更新数据库)

您可以了解如何调用后端并使用thunk中间件更新redux存储