我可以将 npm node_modules 目录放在我的项目之外吗

2024-02-11

我可以像 Maven 处理其依赖项一样将 node_modules 目录放在项目之外吗?


有点。这node_modules目录实际上并不是npm但有一个特点node.js.

Node.js 如何使用node_modules.

当你需要一个模块时,node.js 会搜索node_modules从当前目录向上的目录。这意味着如果它在当前目录(实际上可能是项目的子目录而不是项目目录)中找不到它,它将在父目录中查找,然后从父目录的父目录一直到根目录。

例如,您可以有这样的项目结构:

/node_modules   <-------------------- modules available to all projects    
/code
     /project_A
                /node_modules <------ modules available to project A
                /lib
                    /node_modules <-- modules available to the lib directory
     /project_B
               /node_modules  <------ modules available to project B

这样,您可以拥有一些由多个项目共享的模块和一些特定于项目的模块,甚至一些模块仅可用于项目中的某些文件。

npm 如何处理node_modules

但请注意npm只有一种解释node_modules。它只管理node_modules在你的项目目录中。具体来说,包含以下目录package.json file.

所以是的,你可以做到,但是npm不会理解你在做什么以及你的package.json将包含不完整的依赖关系。我不建议对涉及多个开发人员的项目执行此操作,因为它看起来更像是配置错误的开发环境 - 基本上其他人会认为这是一个错误。然而,我个人在个人项目中使用了这样的结构,我不关心我的package.json file.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我可以将 npm node_modules 目录放在我的项目之外吗 的相关文章

随机推荐

  • RGB 到 HSL 转换

    我正在创建一个颜色选择器工具 对于 HSL 滑块 我需要能够将 RGB 转换为 HSL 当我搜索 SO 进行转换的方法时 我发现了这个问题HSL 到 RGB 颜色转换 https stackoverflow com questions 23
  • 为什么 [][[]] 的计算结果为未定义?

    表达方式 评估为undefined在 JavaScript 中 我对此的理解是编译器看到第二组 并将其解释为数组下标运算符 因为不能让两个数组彼此相邻 所以编译器知道内部表达式 必须是一个索引 因此在评估它之后 它会将其强制为一个数字 Nu
  • 查询以查明外键是否在数据库中的其他位置被引用

    我有餐桌动物 我想返回该表中的所有内容 一列 该列表示记录是否在其他任何地方作为外键引用 I E Animal Id Name 1 Cat 2 Dog 3 Parrot 我想返回这个 AnimalId Name Referenced 1 C
  • 我可以使用Web App的私钥证书来签署JWT吗?

    我正在为 Chrome 浏览器开发推送通知服务器 在 Google Cloud Console 上 我已将我的应用程序注册为 Web 应用程序并下载了私钥证书 我可以使用此证书来签署 JWT 请求吗 可以 但出于多种目的共享私钥通常不是一个
  • 无法在 AWS Lambda 上加载文件 mysql2

    尝试让 Lambda 连接到 RDS 数据库 但无法加载 mysql2 gem 尝试过pristine说明 但这并没有解决问题 我已经在供应商目录中构建了 mysql2 gem 这是使用捆绑安装 部署 据推测 这是一个问题 因为 mysql
  • CodeIgniter:在实时服务器上找不到 404 页面

    我一直在使用 CodeIgniter 开发一个小型 Web 应用程序 在本地进行测试后 我将其放在我的网络服务器上 以允许其他人测试一些功能 导航到该网站时 我得到 404页面未找到错误页面 当在我的本地计算机上查看它时 一切都会加载并完美
  • 如何在 Google App Engine 上调试 Cron 作业?

    情况 Cron 与 Rails 应用程序一起 部署到 GCPcron yaml cron description count things regularly url api v1 cron rake task schedule every
  • AWS Cloudfront 和 ELB 安全组

    有谁知道如何将您的cloudfront发行版添加到ELB的安全组入站规则中 我们为一个新站点设置了一个云前端发行版 该站点具有一组列入白名单的安全组规则 我看不到如何配置安全组以允许来自 cloudfront 发行版的请求 有任何想法吗 如
  • angular4 httpclient csrf不发送x-xsrf-token

    在 Angular 文档中 提到了 Angularhttpclient会自动发送cookie的值XSRF TOKEN在标题中X XSRF TOKEN的帖子请求 文档链接 https angular io guide http securit
  • Java 8 Stream foreach 中递增计数器

    我想增加一个counter这是一个AtomicInteger当我循环使用foreach public class ConstructorTest public static void main String args AtomicInteg
  • CodeIgniter:如何执行选择(不同字段名)MySQL 查询

    我正在尝试检索字段中所有唯一值的计数 SQL 示例 SELECT count distinct accessid FROM accesslog WHERE record 123 如何在 CodeIgniter 内部执行此类查询 我知道我可以
  • 致命 python 错误:initfsencoding:无法加载文件系统编解码器的原因可能是什么?

    我正在使用 Python 3 7 64 位 并安装CX 冻结用于将 py 转换为 exe 我使用此命令提示符将 Python 脚本转换为可执行文件 python filename build 它成功构建了可执行文件 但是当我执行 EXE 文
  • 初始化 Quartz 的最佳方法是什么?

    我不太确定初始化 Quartz 来安排 cron 作业的最佳方法是什么 我的环境是Tomcat 我有一项每天都需要触发的工作 我应该创建一个单独的 Servlet 来初始化 Quartz 并安排我的工作吗 我正在考虑创建一个 Servlet
  • Matplotlib:删除有关 matplotlib.use() 的警告

    在我使用的Python模块中matplotlib 我想确保当我通过以下方式在远程计算机上运行脚本时它也能工作ssh 所以我这样做 import matplotlib matplotlib use Agg from matplotlib ba
  • IntelliJ gradle 添加模块依赖

    使用 IntelliJ 2016 2 使用 Gradle 2 14 1 我有 2 个项目 每个项目都有自己的 build gradle 文件和单独的目录结构 myLib meant to be jarred and used by othe
  • 使用自定义 __setattr__ 和 __slots__ 进行 Python 属性查找

    我有一堂课使用 slots 并通过重写使它们几乎不可变 setattr 总是引发错误 class A slots a b x def init self a b object setattr self a a object setattr
  • 如何制作堆积条形图的动画?

    我正在尝试在四个堆叠条形图之间进行转换 输出并不完全符合我的预期 我无法确定这是否是我的代码中的错误 或者是否是我的代码中的错误gganimateR 包 这是我使用的数据框 df lt structure list name c varia
  • Jetpack 导航动画完整监听器

    当新的导航事件发生时 我尝试使用 Jetpack 导航库获取回调完全的以更改状态栏颜色 到目前为止我已经找到了navController addOnDestinationChangedListener当有新导航时它会通知我starts但不是
  • 过滤 gremlin 结果

    我是 Gremlin 新手 我正在使用 Gremlin 3 0 2 和 Stardog 5 0 我编写此查询是为了找出 schema org 本体中两个实体之间的路径 下面是输出 gremlin gt g V hasLabel Canal
  • 我可以将 npm node_modules 目录放在我的项目之外吗

    我可以像 Maven 处理其依赖项一样将 node modules 目录放在项目之外吗 有点 这node modules目录实际上并不是npm但有一个特点node js Node js 如何使用node modules 当你需要一个模块时