Как я могу получить доступ к файлу базы данных sqlite3 в производстве с помощью электрона?

У меня есть приложение electron, и я использую его вместе с create-electron-app.

Мой основной файл процесса electronic находится в общедоступной папке, как и моя база данных sqlite3.

Когда я ссылаюсь на базу данных в процессе разработки, она работает, как и ожидалось, потому что я могу получить доступ к пути: F:\www\project-name\public\api\db\demodb01

Но в рабочей среде путь не существует (я бы сказал, скрытый за app.asar): C:\Users\userName\AppData\Local\Programs\project-name\resources\app.asar\build\api\db\demodb01

Как я могу настроить файл базы данных в производстве?


person Nemanja Milosavljevic    schedule 22.10.2017    source источник
comment
Нам нужно увидеть, как настроен ваш проект, т.е. package.json и структура папок.   -  person kemotoe    schedule 22.10.2017


Ответы (2)


При хранении файлов в вашем приложении вы должны использовать app.getPath ('userData'), чтобы хранить их вне области действия ваших приложений, что обеспечивает их сохранение.

nedb — распространенный выбор для приложений Electron, поскольку это легкая база данных, написанная на JavaScript. Если вы не проверили это, я рекомендую вам сделать это.

person kontrollanten    schedule 22.10.2017
comment
Спасибо за предложение. У меня была такая же идея хранить базу данных в другом месте. - person Nemanja Milosavljevic; 23.10.2017
comment
Да, это единственное решение :) - person kontrollanten; 23.10.2017

У вас есть еще одно решение. Пожалуйста, выполните следующие действия:

  1. Сначала установите electron-is-dev

  2. Добавьте эти коды в файл main.js: main.js

  3. Теперь в package.json внесите следующие отмеченные изменения: package.json

Спасибо.

person Devavrat Singh    schedule 11.07.2020