当使用 NVM 或在 Node.js 版本之间切换时,必须为每个 Node 版本重建 node_modules。是否可以以某种方式为每个版本使用不同的node_modules目录,而不必每次在版本之间切换时重建内容?
类似于:
node_modules_v8/
node_modules_v7/
node_modules_v6/
也许有更好的方法来做到这一点,但不确定。
最佳答案
三个建议(按照我的偏好顺序):
- 使用 Docker 帮助配置 Containers和 Volumes根据您的 Node 版本切换事物指向的位置。
- 设置指向
node_modules
文件夹的符号链接(symbolic link)( Linux syntax 、 Windows syntax ),该文件夹指向node
期望运行的模块的正确版本。< - 与操作符号链接(symbolic link)类似,使用
NODE_PATH
设置并在执行node
命令之前将其指向node_modules
文件夹的正确缓存(即 NODE_PATH=/etc/node_v8)。如果您全局设置它,它将限制您在该机器上运行 Node 的多个实例,因此您需要在每个流程实例上设置NODE_PATH
。
关于node.js - 不同版本的 Node.js 使用不同的 node_modules 目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45930794/