reactjs - 如何处理 Electron 应用程序中的数据库查询(使用 react-redux)?
问题描述
我正在使用连接到 Sqlite 数据库的 React 和 Redux 构建一个 Electron 应用程序。我正在使用 knexjs 查询数据库。
目前在我的应用程序中,我正在使用 IPC 在渲染器进程和主进程之间进行通信。
// actions.js
export const fetchDecks = () => async (dispatch,getState) => {
ipcRenderer.send('DECKS_REQ')
ipcRenderer.on('DECKS_REP', (e,decks)=> {
dispatch({type: FETCH_DECKS, payload: decks})
})
}
// main.js
ipcMain.on('DECKS_REQ', (e) => {
knex.select().from('decks').then((response) => {
e.sender.send('DECKS_REP', response)
})
})
为每个请求发送请求是一种好习惯吗?我应该如何在主进程中构建数据库访问?
解决方案
除了将 ipc 位与您的 thunk 功能分离之外,我觉得您的方法是合理的。看看你是否可以“electron.remote”将你的对象导入渲染器端,因为它会使调试更容易。
推荐阅读
- java - java.lang.IllegalArgumentException:在方法名称中发现无效字符。HTTP 方法名称必须是 Spring 和 Android 中的标记
- textx - 父级中的引用属性
- adsense - 在 AdSense 广告上获得无效点击 - 以前从未见过
- netlify - 从 netlify 函数运行动物群 FQL 查询时出错
- javascript - Javascript querySelector 给出 null
- javascript - 承诺在 then 中异步运行 setTimeout
- r - ggplot中的条形图由两列堆叠并避开另一个变量
- gruntjs - grunt:警告:在循环依赖中访问模块导出的不存在属性“padLevels”
- python - PYTHON:使用 pandas ExcelWriter 从 .xlsx 中提取数据并使用 PIL 在图像上作为文本输出
- typescript - 打字稿:可添加类型的通用?(带`+`)?