gpt4 book ai didi

node.js - 在不同项目之间共享node_modules

转载 作者:太空宇宙 更新时间:2023-11-03 22:09:37 31 4
gpt4 key购买 nike

我正在开发各种 Angular 2 项目,我想在多个项目之间共享 node_modules 文件夹。我想创建一个像这样的结构:

MainFolder
- Project1
- Project2
- package.json

所以我所有的项目都只有 1 个 package.json 。我的回答是:可以这样做吗?如果可能的话,我必须和 -g 共进午餐 npm install 吗?我无法理解 -g 是如何工作的。有人可以指导我如何进行吗?非常感谢

我忘了说我是用 angular-cli 构建项目的。

最佳答案

对于小型/学习/测试项目,我解决这个问题的方法是使用(我称之为)“git 项目”。基本上我通过 git 管理各种项目,然后“加载”我想要处理的项目。当然,如果您想同时访问多个项目,这不起作用。

我喜欢使用 git 客户端来实现此目的,因为它更容易可视化我现有的“项目”。

所以我的工作流程是这样的......

  1. 创建我的主/基本文件夹。这将包含 git 存储库、单个 node_modules 文件夹以及所有项目通用的其他内容。
  2. 我创建了基本的 package.json 文件(使用 npm init)。没有描述,什么也没有,只有基本的框架 package.json 文件。 (但是,如果您知道将在所有项目中使用某些包,您可以先 npm 安装它们,这样它们就会作为您的“基本”模块添加到 package.json 中。)
  3. 现在,我将裸露的 package.json 检查到存储库中(以及您可能希望在所有项目中拥有的其他任何内容,但通常只是 package.json 文件)。这将是所有项目的基本起始分支。
  4. 一旦 checkin ,我就会在 git 存储库中创建一个分支。这将是“项目 1”——或者您想调用它的任何名称。然后按照您想要的方式构建您的项目,安装模块,检查更改等等。
  5. 当我想开始一个新项目时,我只需检查第一个基本项目(它只是空的或几乎空的 package.json 文件)并从中创建另一个分支。这将是我的第二个项目。

等等...

所以最重要的是,每个新的“项目”都将是 git 存储库中的一个新分支,要创建一个新项目,只需切换回原始的基本项目并从中创建一个新分支即可。

当然,也可以在项目内创建分支。这都是关于命名约定的。例如,您可以在新项目分支前加上“P_”或“PROJECT_”等前缀,这样您就可以在 git 客户端中快速判断哪些分支是项目。当然,如果您只需要在现有项目中创建新分支,请使用不同的命名方案。我基本上就是这样做的。

您可能不喜欢这个工作流程,但这样我就不需要全局安装软件包。当我进行备份时,我可以简单地删除单个(可能很大)node_modules 文件夹。所有与项目相关的模块都可以通过简单地 checkout 特定项目的分支并在其 package.json 上运行“npm install”来重新安装。希望这是有道理的。

关于node.js - 在不同项目之间共享node_modules,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46470247/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com