react中使用echarts,render会触发所有组件更新

页面里面有好几个echarts图表,点击某个事件,发请求,获得数据后,
调用setState()改变了其中一个图表的数据源,应该要刷新那一个组件的,但是其他组件也刷新了(没有改变他们的数据,原地刷新)。

我知道setState会触发页面的render函数,但是对于其他的echarts组件来说,数据没有变,为啥会有重新渲染的动作。

难道只能把setstate()放在各自的组件内部去执行吗,
求解答!!!

阅读 4.7k
2 个回答

对组件做一下引用,然后直接把数据更新进去就可以,这样就避开state更新了。参考https://blog.csdn.net/qq_3722...
useMemo也是个办法,但是从学习的角度不推荐,搞清楚细节能学到更多东西。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题