Я впервые пытаюсь создать настольное приложение, используя Electron Framework , и пытаюсь использовать Модуль Трилогии . Тем не менее, появляется несколько ошибок.
По сути, основная идея моего кода состоит в том, чтобы иметь кнопку, которая входит в базу данных SQL и проверяет, существует ли таблица «DATA». (Я знаю, что это отстойно, но я пытаюсь проверить концепцию здесь, так что терпите меня).
Мой код main.js - это именно тот код, который был найден в руководстве для начинающих , и до того, как я импортировал Trilogy, он работал нормально. Часть зависимостей моего package.json была следующей:
"dependencies": {
"electron": "^2.0.16",
"sql.js": "^0.5.0",
"trilogy": "^1.4.5"
},
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "electron ."
},
"devDependencies": {}
Заголовок моего HTML-кода импортировал скрипт "tri.js", а затем тело моего HTML-кода вызывало это с помощью:
<button onclick="search()">Produce Table</button>
<div id="table">table</div>
Файл для "tri.js" содержит следующий код:
require('trilogy');
const db = new Trilogy('./storage.db');
function search()
{
var model = "THIS DOESN'T WORK";
document.getElementById('table').innerHTML = model;
if (db.hasModel('DATA')) {
model = "YES";
}
else {
model = "NO";
}
document.getElementById('table').innerHTML = model;
}
Когда этот код запускается с использованием npm start
, выводимый текст в div становится «ЭТО НЕ РАБОТАЕТ». Я пытался запустить его в своем браузере, но мой браузер не распознавал «require» и «import» (я пытался использовать оба оператора) с сообщениями об ошибках «Can't find variable require» («Не удается найти переменную require») и «Call import ожидают ровно одного аргумент "соответственно. Когда кнопка нажимается, в строке появляется сообщение «Не удается получить доступ к неинициализированной переменной», когда я вызываю функцию db.hasModel ().
Когда я попытался удалить оператор import и require и сначала загрузить его прямо в HTML, он выдает ошибку «undefined не является конструктором».
Кто-нибудь знает, как это реализовать, чтобы я мог делать то, что хочу? Или, если нет, любые предложения о дальнейшей отладке также приветствуются. Спасибо.