Как найти путь к файлу изображения в электронном приложении? - PullRequest
0 голосов
/ 15 июня 2019

Я создаю электронное приложение и упаковку для распространения с помощью электронного компоновщика для Windows и Mac.Это приложение создает папку и некоторые PDF-файлы внутри, в зависимости от ввода пользователя.В PDF-файлах также используется изображение, которое в качестве узла я держал в корневой папке приложения.

Мне удалось записать на рабочий стол, используя абсолютный путь.

 if (!fs.existsSync(`/Users/${user}/Desktop/2019 Certificates`)){
        fs.mkdirSync(`/Users/${user}/Desktop/2019 Certificates`);
    }

но когда я использую этот относительный путь

stampandseal.png

, я получаю следующую ошибку:

Я ожидаю, что он найдет png относительно файла js, однако я получаю следующую ошибку:

fs.js:121 Uncaught Error: ENOENT: no such file or directory, open 'stampandseal.png'

1 Ответ

1 голос
/ 16 июня 2019

Если я правильно понимаю вашу проблему, вы пытаетесь скопировать изображение из комплекта приложения на рабочий стол пользователя.Используйте __dirname для ссылки на каталог, в котором выполняется ваш код, а затем создайте путь к нему.

Код ниже используется моим файлом main.js, который находится в каталоге, содержащем мой app каталог.Я использую upath для построения пути и jetpack вместо fs для копирования

var fromPath = upath.join(__dirname, "app", "assets", "image.png");
jetpack.copy(fromPath, toPath, { overwrite: true });
...