如何运行 knex in electron 的preload js?

How to run knex in electron's preload js?

我正在尝试在 preload js 脚本中而不是在 Main Process [=16] 中加载 knex =]

我已经使用 module.exportsMain Process 导入 knex,但你会得到新的错误

/home/alexander/Deve…enderer/init.js:166 Unable to load preload script: /home/alexander/Develop/Electron/App/app/preload.js

/home/alexander/Deve…enderer/init.js:167 TypeError: Cannot read property 'on' of undefined

当我在预加载中添加这个时:

//preload js

var knex = require("knex")({
    client: "sqlite3",
    connection: {
        filename: path.join(__dirname, './database.sqlite')
    },
     useNullAsDefault: true
});  

我最终在电子应用程序开发工具中遇到了这些错误

/home/alexander/Deve…enderer/init.js:166 Unable to load preload script: /home/alexander/Develop/Electron/App/app/preload.js

/home/alexander/Deve…enderer/init.js:167 ReferenceError: path is not defined (anonymous) @ /home/alexander/Deve…enderer/init.js:167

你的错误:

ReferenceError: path is not defined

你用path 所以试试

//preload js
// added path
const path = require("path");

var knex = require("knex")({
    client: "sqlite3",
    connection: {
        filename: path.join(__dirname, './database.sqlite')
    },
     useNullAsDefault: true
});