2016-08-02 2 views
0

Я пытаюсь проверить, является ли путь в родительском каталоге файлом или каталогом.Ошибка при попытке доступа к родительской папке в Electron/Node.js

Моя файловая система выглядит следующим образом:

  • файлы/
    • HTML/
      • index.html
    • JavaScript/
      • index.js
    • тест/
      • test.jpg

Electron запускается из родительского каталога файлов /. Мой код в index.js файле:

console.log(`file://${__dirname}/../test/test.jpg`); 
console.log(fs.lstatSync(`file://${__dirname}/../test/test.jpg`).isFile()); 

Когда я начинаю Electron я получаю два сообщения в журнале. Первый - это путь к картинке, к которой я хочу получить доступ (test.jpg). Когда я вставляю этот путь в свой браузер, изображение отображается, поэтому это правильный путь. Но второе сообщение об ошибке:

Uncaught Error: ENOENT: no such file or directory, lstat 

А затем тот же путь в одинарные кавычки («»).

У меня был файл index.js и index.html по тому же пути, с которого запускался электрон (родительская папка с файлами /), и он работал, поэтому я думаю, что у него есть проблемы с родительской папкой , Как я могу это решить?

ответ

2

Узел fs модуль работает с путями к файлам, а не URL-адреса, поэтому вам необходимо пройти правильный путь к fs.lstatSync:

fs.lstatSync(`${__dirname}/../test/test.jpg`).isFile() 
+0

Большое спасибо! – Alexander

Смежные вопросы