【发布时间】:2020-02-18 20:02:19
【问题描述】:
我有一个在 nodejs 上使用 html-pdf 生成 PDF 的应用程序,但是在我部署到生产服务器后,我无法生成。它给出了这个错误:
'html-pdf: 无法加载 PhantomJS 模块。你必须设置路径 使用 'options.phantomPath' 到 PhantomJS 二进制文件
如果我再次运行npm install html-pdf,则会出现此错误
npm ERR! errno 1
npm ERR! node@11.8.0 preinstall: `node installArchSpecificPackage`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node@11.8.0 preinstall script.
而且这个错误会复制到其他模块,但我转过身来。
运行节点 13.7.0 和 npm 6.9.0
【问题讨论】:
-
如果你不能完成这项工作,我也推荐 Puppeteer 来帮助实现这个目的。这是我将服务器端 HTML 转换为 PDF 的首选。
-
您运行的是节点 13.7 还是 11.8?您的日志显示的内容与您的文字不同。
-
PhantomJS 已死,使用 Puppeteer,正如@stephancasas 建议的那样。我还建议尝试 Gotenberg — 这是 Docker 驱动的用于转换为 PDF 的 API,我为它编写了小型 JS/TS 客户端 — github.com/yumauri/gotenberg-js-client
标签: node.js npm html-pdf node-html-pdf