我正在做一些非常小的Node.js项目。希望有一个单独的节点模块目录,以便所有这些项目可以从同一位置要求。我尽量减少存储空间。在许多小的“教程项目”上工作,多次安装同一个模块似乎很愚蠢。
下面是示例结构
├── shared_directory
│ ├── node_modules
│ ├── package.json
│ └── package-lock.json
├── project_1
│ ├── app.js
│ ├── index.html
│ └── style.css
├── project_2
│ ├── app.js
│ ├── index.html
│ ├── style.css
看起来我用错误的属性或错误的路径调用require()。
// project_1 app.js
const express = require("../shared_directory/express");
const bodyParser = require("../shared_directory/body-parser");
Error: Cannot find module '../shared_directory/express'
1条答案
按热度按时间i5desfxk1#
你可以使用npm来管理多个包,它允许你在一个顶级根包中管理多个包或项目。
每个包都有自己的
package.json
文件。它足够聪明,可以扫描你的文件夹,寻找所有要安装的依赖项。您还可以在根级别定义依赖项,并且它们可以在工作区中的所有包之间共享。您可以轻松地找到在项目中在线设置工作区的方法
参考号:https://docs.npmjs.com/cli/v7/using-npm/workspaces