请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

请问下关于this.setState(store.getState())的问题

代码如下:
handleStoreChange(){
this.setState(store.getState());
}
老师不是说setState里面最好是传一个函数么,那这个地方是不是最好是写成this.setState(store.getState)呢?我试了下,这样也是功能正常没有报错的。不知道这样写对不对。

正在回答

1回答

这个这么写没问题,因为不用用到原始state中的数据

0 回复 有任何疑惑可以回复我~
  • 提问者 hpbrave #1
    谢谢回复!那只是这种情况下可以写成函数作为参数的形式么?是不是还是写成this.setState(store.getState())更合理?但是老师前几节课不是说setState()的参数应该为一个函数么?非常感谢!
    回复 有任何疑惑可以回复我~ 2019-02-28 08:19:23
  • Dell 回复 提问者 hpbrave #2
    为什么是函数呢,是因为新的state依赖于老的state,这个时候就应该用函数,但是如果新的state不依赖于老得state的数据,这样用对象也行。这涉及到底层的原理,你可以深入研究下。
    回复 有任何疑惑可以回复我~ 2019-03-02 14:02:59
  • 提问者 hpbrave 回复 Dell #3
    有点明白了,非常感谢!
    回复 有任何疑惑可以回复我~ 2019-03-05 08:39:39
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信