Electron + React 渲染进程和主进程如何使用 redux 共享状态? 有没有啥方案或者包推荐的?

1 lsk569937453 Jul 25, 2023 后端小白问下: react 都有 hooks 了还需要用 redux 做什么用? 因为有一次我问我的前端同学用什么做状态管理,他说用 react hooks 就够了。。。。 |
2 zhuangpipi Jul 25, 2023 很短暂的用过一段时间,考虑一下状态放主进程,然后自己封装一下和主进程通讯的方法用? |
3 leuction Jul 25, 2023 @lsk569937453 没有什么用,现在用 redux 主要还是历史遗留问题,除非你的状态过于复杂或者需要回放等功能,其他情况下根本不需要 redux |
4 jchnxu Jul 25, 2023 监听主进程的里面的状态对象,感觉是可行的 |
5 xianyu191031 Jul 25, 2023 把渲染进程同步主进程状态的行为理解成跟 web 开发中的异步后端调用就好了 |
6 yuyue001 Jul 25, 2023 印象中,这两个线程是独立的。不能直接共享数据。 但是 electron 提供了通信方式。你看看这个 进程间通信 https://www.electronjs.org/zh/docs/latest/tutorial/ipc |
7 cF06myaQ57WHKMBv Jul 25, 2023 主进程和渲染进程是隔离的,主进程是 node 环境,渲染进程是 web ,共享状态还是要靠进程间通讯来实现 |
8 leohxj Jul 25, 2023 |
9 otakustay Jul 25, 2023 你把主进程理解成后端,Electron 内部还是个前后端分离的系统,自然没有共享状态这事了,只是通信相比 HTTP 快很多 |
10 ChefIsAwesome Jul 25, 2023 你就当做普通 web 开发,前后端分离,ipc 通讯就是调 api 。不要想着在一端就能搞定所有的。 |
11 lokitangl Jul 25, 2023 我们之前的项目,直接搞了个 middleware ,每次 action 把 redux 状态通过 IPC 传到主进程里 这么干其实没必要,浪费资源 实际上只需要把需要用到的数据传到主进程就可以了 |
12 RealJacob Jul 25, 2023 @lsk569937453 复杂状态管理个人认为还是 redux 更方便,尤其是一些基于 redux 封装的包。(可能也是遗留的使用习惯问题)。但是确实 context 和 reducer 可以解决大部分状态管理的问题 |
13 owen800q Jul 25, 2023 eletronAPI |