Side影响安装节点模块和更改Node.js版本?

在特定的Node.js版本下安装节点模块,更改Node.js的版本(例如,使用NVM还是一般的节点升级),以及使用以前安装的节点模块,是否有任何问题或副作用?

是的,有! 如果我安装了一个针对特定版本的节点进行testing的模块,然后更新我的节点版本,我不能保证该模块仍然按预期工作。

有一个可选的字段engines ,可以在package.json中设置; 从这里开始,模块发布者可以指定他的模块工作所需的节点版本,例如

{ "engines" : { "node" : ">=4 <6" } }

如果您的节点版本不受支持,这将在软件包安装过程中发出警告消息。