请稍等 ...
×

采纳答案成功!

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

electron-store无法使用

// app.js

const Store = window.electron.require('electron-store')
const fileStore = new Store()

// preload.js

const { contextBridge } = require('electron')

contextBridge.exposeInMainWorld('electron', {
    fs: require('fs'),
    require: window.require,
})

在渲染进程中new store就报错,electron版本是30.0,electron-store: 6.0.1。新版本中无法在渲染进程中直接使用window.require来引入模块了,所以只好把require模块暴露出来

报错如下

Uncaught Error: Class constructor ElectronStore cannot be invoked without 'new'

正在回答 回答被采纳积分+3

1回答

张轩 2024-04-22 09:54:45

同学你好

请参看文档中关于在 main process 以及 renderer 同时使用的例子:

https://github.com/sindresorhus/electron-store?tab=readme-ov-file#how-do-i-get-store-values-in-the-renderer-process-when-my-store-was-initialized-in-the-main-process


它详细介绍了两种使用方式,关于 invoke 以及  handle 的形式,可以看第二章我们今年才更新的关于Electron 进程通信的三种方式。


0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信