Не удается установить или запустить html-pdf на nodejs

У меня есть приложение, которое создает PDF-файлы с помощью html-pdf на nodejs, но после того, как я сделал развертывание на производственном сервере, я не могу его сгенерировать. Это дает эту ошибку:

'html-pdf: не удалось загрузить модуль PhantomJS. Вы должны установить путь к двоичному файлу PhantomJS, используя «options.phantomPath».

И если я снова запускаю npm install html-pdf, выдает эту ошибку

npm ERR! errno 1
npm ERR! [email protected] preinstall: `node installArchSpecificPackage`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] preinstall script.

И эта ошибка реплицируется на другие модули, но я сделал оборот.

Работающий узел 13.7.0 и npm 6.9.0


person lufizi    schedule 18.02.2020    source источник
comment
Если вы не можете справиться с этой задачей, я также рекомендую Puppeteer, чтобы помочь с этой целью. Это был мой путь к серверному HTML в PDF.   -  person stephancasas    schedule 18.02.2020
comment
Вы используете узел 13.7 или 11.8? Ваши журналы говорят что-то другое, чем ваш текст.   -  person Joe    schedule 19.02.2020
comment
PhantomJS мертв, используйте Puppeteer, как предложил @stephancasas. Также я рекомендую попробовать Gotenberg — это API на основе Docker для преобразования в PDF, и я написал для него небольшой JS/TS-клиент — github.com/yumauri/gotenberg-js-client   -  person yumaa    schedule 26.02.2020


Ответы (1)


Можете ли вы попробовать еще раз с флагом -g

npm install -g html-pdf

Если все еще не работает, выполните после этого:

npm link html-pdf
npm link phantomjs-prebuilt

из https://github.com/marcbachmann/node-html-pdf/issues/437#issuecomment-467463285

person Horatiu Jeflea    schedule 18.02.2020