在使用node-canvas時,由於更換了node版本遇到
Error: The module '\\?\D:\nodejs\node_modules\canvas\build\Release\canvas.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 83. This version of Node.js requires
NODE_MODULE_VERSION 72. Please try re-compiling or re-installing
the module (for instance, using `npm rebuild` or `npm install`).
解決方法:
重新安裝使用cnpm install canvas(不要使用npm或yarn安裝,安裝過幾次都失敗了)
或者從 https://github.com/node-gfx/node-canvas-prebuilt/releases直接下載編譯好的包,替換掉 build\Release
說明:
NODE_MODULE_VERSION 83對應nodejs版本為Node.js 14.X
NODE_MODULE_VERSION 72對應nodejs版本為Node.js 12.X
NODE_MODULE_VERSION指的是Node.js的ABI(application binary interface)版本號,用來確定編譯Node.js的C++庫版本
nodejs同NODE_MODULE_VERSION對照
https://nodejs.org/en/download/releases/