我们如何管理像IDEA中的Maven这样的前端项目依赖包



前端项目越来越多,每个项目都有自己的node_modules文件夹。

模块文件夹中有很多重复的文件。

我们如何像IDEA中的Maven一样,在一个文件夹中管理所有前端项目的依赖包?

需求:

  1. 当运行和打包不同的项目时,WebStorm可以引用指定文件夹中的依赖包。

  2. 当运行npm install时,计算机将检查公共依赖包文件夹是否具有当前项目需要使用的依赖版本。

    • 如果是,您将不会下载安装程序
    • 如果没有,您将把自己的依赖项下载到公用文件夹
  3. 当同一个依赖包中存在多个版本时,项目可以自动引用正确的版本。

也许看完我的问题后,你比我更了解我的实际需求。谢谢。

如果您在任何带有npm的前端项目中查看package.json文件,您将看到当前项目中的所有依赖项,并可以在那里管理版本。npm install安装该文件中列出的依赖项

点击这里阅读更多关于package.json的信息:package.json

使用纱线工作区

纱线工作空间的特点,并解决

  1. 多个项目大量重复节点_模块磁盘黑洞问题

  2. 当为项目执行NPM安装时,所有依赖包都将被放置在当前项目中项目的节点中_在模块文件夹下重新安装

    2.1在安装新的依赖包时,应该更新子项目的package.json,然后在根目录中执行yarn install来安装它

首先安装纱线工具

npm i纱线-g

如果根文件夹中有project-a和project-b项目,则目录结构如下:


root
project-a
project-b
  1. 在根文件夹中创建package.json,内容如下:

{
"private": true,
"workspaces": ["project-a", "project-b"]
}
  1. 确保project-a和project-b项目的package.json中的name属性值为:

Package.json in project-a:
{
...
"name": "project-a"
...
}
Package.json in project-b:
{
...
"name": "project-b"
...
}
  1. 使用命令行工具进入根文件夹并执行纱线安装

    3.1 after installation, you can enter the normal start-up project
    
  2. 提示:

    4.1 all dependent packages will be installed at root/node_ Under modules folder
    4.2 node of subproject_ The related link file will be generated under the modules folder, do not delete it
    4.3 when installing a new dependency package, you should update the package.json of the subproject, and then execute the yarn install in the root directory to install it
    

最新更新