请教:redux修改状态后,react容器内无状态子组件数据未刷新
发布于 5 年前 作者 xwwscu 3518 次浏览 来自 问答

react小白,在尝试todolist,遇到一个问题,请大家帮解个惑: redux里面reducer修改状态之后,react里面容器的props更新了,但是容器里面的无状态子组件却未更新,这是为什么? 贴下代码: react_helloworld_my-hello_src_cont_1.png react_helloworld_my-hello_src_cont_2.png 调试现场: 2019-04-04 11_04_13-React App.png

3 回复

自顶一下。。。

  1. 装个 redux-logger,确保state进行了修改. 这一步非常有必要, Redux和应用的组件实际都是React的component, redux-logger打印正常,说明 store的工作正常,可以为应用的组件提供state树了.
  2. 第一步正常了, 可以在组件的容器内console.log一下需要的state分支(以props表现). 如果这里是你想要的,说明connect函数工作正常
  3. 在子组件console.log一下所需的props,这个地方就和Redux完全没有任何关系了.

你的这个,看看MyTodo里的finished props是不是写死了.我看你前面Redux里用了Typescript. 这里 MyTodo定义一个todo接口就比较好检查了.

回到顶部