electron 电子版本:在后端和前端之间同步变量

zhte4eai  于 2022-12-08  发布在  Electron
关注(0)|答案(1)|浏览(236)

我正在开发一个Vue-Electron应用程序。让我们想象一下,在前端有一个设置页面,里面有一些你可以摆弄的变量。当然,我想在设置页面重新加载时保留所有的设置。要做到这一点,我认为有必要在后端的一个设置对象中存储这些值,在重新加载时将它们拉回到页面上。
使用Electron,我知道有三个选项:

1.使用'requrie'提取

require('electron').remote.require("./main.js")
这样我就可以访问所有的变量
exports.<someFunctionOrVar>
不幸的是,这对我来说并不合适,因为webpack配置不允许这样做,我更喜欢使用webpack热模块重载。

2.使用'global'提取

require('electron').remote.getGlobal('myVarOrFunction')
我的所有设置都保存在一个settings-object中,这个settings-object保存在主进程中。一旦我用getGlobal拉取了这个对象,并将它保存在我的vue数据变量中,我就可以访问所有的字段来预填充我的设置表单,当我在表单中更改了一些内容时,它也会到达后端。
这个问题是,由于这里解释的限制,vue不会在数据更改时更新DOM。

3.工业和信息化委员会

使用Electron的IPC,我必须为每个设置变量设置一个通道,以便vue.js前端保持React性,同时保持后端同步。这毕竟不是理想的。
在主进程和渲染器进程之间保持数据同步应该很简单。我只是不知道如何有效地解决这个问题,并考虑到所使用的vue框架。我如何在主进程和渲染器进程之间保持数据同步?

uqzxnwby

uqzxnwby1#

我发现保持页面间应用状态一致的最好方法是使用Vuex。使用商店和mutators,你可以轻松地设置一个设置页面,在你的应用中传播值。同样,你可以通过计算变量将你的初始表单状态绑定到商店,以确保观察器的正确触发。

相关问题