Im пытается скомпилировать папку файлов разметки в один PDF с markdown-pdf
пакет NPM.Недопустимая операция Nodejs в каталоге
У меня есть простой скрипт, чтобы сделать работу:
var mpdf = require('markdown-pdf');
var fs = require('fs');
var mDocs = fs.readdirSync('./understandinges6/manuscript/');
mDocs = mDocs.map(function(d) { return 'understandinges6/manuscript/' + d });
var Book = 'understandinges6.pdf';
mpdf().concat.from(mDocs).to(Book, function() {
console.log("Created", Book);
});
Но когда я выполнить сценарий, появляется эта ошибка:
events.js:154
throw er; // Unhandled 'error' event
^
Error: EISDIR: illegal operation on a directory, read
at Error (native)
Это странно, потому что я нахожусь в своей домашней папке с соответствующие разрешения. Я указываю выходную папку/файл в скрипте и просто читаю с помощью fs.readdirSync
.
Есть идеи по этому вопросу?
Ну не ошибка EISDIR очевидна? Я требую один или несколько файлов в mDocs IS DIR (это каталог, а не файл) try 'console.log (mDocs);' для проверки – Molda
mDocs возвращает правильный массив: [здесь находится фрагмент] (https: // gitlab.com/snippets/16400) – Nano
Видя, что ваш ответ означает, что массив неправильный? Итак, был каталог, поэтому я был прав, не так ли? И хотя ваш docs.pop() работает, он не является надежным, поскольку, если папка не была последней в массиве, она не сработает. Лучше было бы использовать docs.filter, чтобы отфильтровать все без расширения md. – Molda