#javascript #node.js #electron
Вопрос:
Я работаю с приложением, которое читает/записывает файлы json, расположенные в extraResources
каталоге, созданном electron-builder
Пакет.json
"build": {
"files": [
"src/*",
"src/json/*",
"src/scss/*",
"src/views/*"
],
"extraResources": [
{
"from": "./src/json/",
"to": "extraResources",
"filter": [
"**/*"
]
}
],
"win": {
"target": "nsis",
"icon": "build/icon.ico"
}
}
Я пытаюсь прочитать файл json из задач.json с этим
const loadTasks = fs.readFileSync(path.join(__dirname, 'extraResources', "Tasks.json"))
Но при компиляции я получаю это сообщение об ошибке в консоли:
Uncaught Error: ENOENT: no such file or directory, open '/extraResources/Tasks.json'
я не знаю, что я делаю не так, но я не могу получить доступ к дополнительным ресурсам, которые находятся вне приложения.asar
Спасибо!!!
Ответ №1:
Из electron-builder
документации, extraResources
находится в каталоге ресурсов приложения
Шаблон глобуса относительно каталога проекта, если он указан, скопируйте файл или каталог с соответствующими именами непосредственно в каталог ресурсов приложения (Содержимое/Ресурсы для macOS, ресурсы для Linux и Windows).
Вы можете получить каталог ресурсов с помощью process.resourcesPath
path.join(process.resourcesPath, YOUR_EXTRA_RESOURCES_FILES);