我目前正在使用chartjs-node
生成一些图表。我的node.js代码在我的本地(windows)机器上完美运行,但我怀疑是因为我安装了windows-build-tools
,其中包含cairo
包。
当我推送到我的远程(linux)服务器并尝试编译时,我收到以下错误:
No package 'cairo' found
但是,我的包依赖列表如下:
"canvas-prebuilt": "^1.6.5-prerelease.1",
"chart.js": "2.6.0",
"chartjs-node": "^1.6.1"
根据我对the documentation的理解,使用canvas-prebuilt
代替canvas
应避免在我的服务器上预安装任何软件包的需要。显然,我可以只是预先安装必要的软件包(as described in this SO answer) - 但我想知道是否有任何方法可以设置我的软件包依赖列表以避免该路由。
感谢您的帮助!
答案 0 :(得分:2)
您可以将chartjs-node
切换到我的chartjs-node-canvas包裹。它使用canvas-prebuilt
代替canvas
,这是其存在的主要原因之一:)