我为我的Angular应用程序开发了一个Node API。我的Node应用程序使用node-printer包打印由Node生成的PDF文件,但是当我尝试使用nodemon运行我的应用程序时,出现了错误。
node printer.node 不是一个有效的Win32应用程序
另一台机器上的相同应用程序没有任何错误,两台计算机都是X64位架构。
我还尝试安装了Node JS 32位版本,但仍然出现相同的错误。
这对我有用,以如下方式安装打印机:
npm install printer --build-from-source
node_modules
文件夹,并通过执行 npm install 命令重新安装所有模块来解决问题。你好,让我来介绍一下2022年我的网站上发生了什么。
如果你要在Electron应用程序中使用npm install printer
,那么你正在使用一个被Electron视为本地模块的模块。
由于Electron具有与您用于安装打印机的给定Node.js二进制文件不同的应用程序二进制接口(ABI),因此我们需要为Electron重新构建本地模块(在这种情况下是打印机)。
欲了解更多详细信息,请查看this。
首先,在您的项目中安装electron-rebuild。npm i electron-rebuild
。
第二,使用例如npm i printer
安装本地模块
第三,在安装本地模块后,执行./node_modules/.bin/electron-rebuild
以重新构建本地模块。