Я проверяю, могу ли я подключиться к базе данных SQLite3, используя Electron и Node.js, однако, когда я предпринимаю необходимые шаги для извлечения данных, я просто получаю один «нулевой» ответ в терминале.
Мой код выглядит следующим образом
Main. JS
const { app, BrowserWindow } = require("electron");
const path = require("path");
const url = require("url");
let win;
function createWindow() {
// create browser window
win = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
nodeIntegration: true
}
});
let server = require(__dirname+ "/../server/server.js");
// Load index.html
win.loadURL(
url.format({
pathname: path.join(__dirname, "index.html"),
protocol: "file:",
slashes: true
})
);
// Open dev tools
// win.webContents.openDevTools();
// win.on("closed", () => {
// win = null;
// });
}
app.on("ready", createWindow);
app.on("window-all-closed", () => {
if (process.platform == "darwin") {
app.quit();
}
});
Сервер. js
let express = require("express");
let app = express();
let inv = require("../run.js");
app.get("./run", function() {});
app.listen(3000, function() {
inv.getInv();
console.log("Server is running");
});
Выполнить. JS
let sqlite = require("sqlite3");
let path = require("path");
let db = new sqlite.Database(path.join(__dirname + "/test.db"));
module.exports.getInv = function() {
db.all("SELECT * FROM testing", function(rows) {
console.log(rows);
});
};
Указатель. html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Sqlite3 to Node.js</title>
<link rel="stylesheet" href="app.css" />
</head>
<body>
<div class="container">
<h1>Sqlite3 to Node.js</h1>
<div id="output"></div>
</div>
</body>
<script>
console.log(process);
</script>
<script src="renderer.js"></script>
</html>
И Renderer. js файл, который является пустым.
Использование этих файлов вместе с «npm start» (сценарий запуска, работающий на «Electron.») Позволяет всплывающему окну и все работает, как и ожидалось, но как я сказал в консоли, где я ожидаю, что мои данные будут все, что я вижу, заменив это Null.