具体来说,为什么我必须为每个使用Node的项目加载/保存数千个node_modules文件?对我来说,这似乎是多余和低效的,特别是当VAST的大多数模块在项目到项目中都是相同的时候。我知道这个系统的设计是为了开发人员需要让不同的项目使用不同的模块配置。我不明白的是;为什么Node JS没有设计为针对全局node_modules文件夹并使用package.json依赖项列表来指定使用/不使用哪些?我假设这基本上类似于mongoose如何定位MongoDB目录并且只访问特定项目所需的表。
我对MEAN有点新鲜,所以我怀疑开发人员没有想到这一点,我只是想知道这个决定背后的想法。
答案 0 :(得分:1)
如果您不想为每个项目单独安装模块,并且您可以使用每个相关模块的完全相同的版本号对所有项目进行操作,那么您可以在共享位置安装一次模块并从那里使用它们。
您可以使用以下内容全局安装模块(NPM确定全局共享位置的位置):
npm -g install express
然后,就像使用它一样:
const express = require('express');
或者,您可以将它们安装到您自己的共享位置:
cd /node
npm install express
然后,在所有项目中,您将使用:
const express = require('/node/express');