如何使用全局/通用 node_modules 而不是本地 node_modules?

Posted

技术标签:

【中文标题】如何使用全局/通用 node_modules 而不是本地 node_modules?【英文标题】:How to use global/common node_modules instead of local node_modules? 【发布时间】:2018-05-08 04:08:23 【问题描述】:

我想使用 global node_modules (C:\Users\<user_name>\AppData\Roaming\npm\node_modules) 或 common node_modules (D:\node_modules) 而不是本地 node_modules (D:\angular\projects\project1\node_modules)。

我想将 node_modules 用于各种项目。

这是我的项目结构。 D:\ ├── node_modules (common for all projects) │ ├── Module-N ├── projects │ ├── project1 │ │ ├── src │ │ ├── app │ │ | ├── Module-N (importing from common) | │ ├── project2 │ │ ├── src │ │ ├── app │ │ | ├── Module-N (importing from common) | ├── ....

【问题讨论】:

【参考方案1】:

尝试使用相对路径,例如当您需要自己的全局模型模块时

例如

假设我们想从全局节点模块中获取一个模块,并且我们正在处理的文件是 projects/project1/src 上的席位

我们会做require('../../../node_modules/my_global_model')

【讨论】:

【参考方案2】:

尝试查看tsconfigs 路径:https://www.typescriptlang.org/docs/handbook/module-resolution.html

【讨论】:

当我使用 Angular cli (ng serve/build) 启动 Angular 应用程序 (project1) 时,我得到了以下信息。ENOENT: no such file or directory, lstat 'D:\Angular\Project1\node_modules

以上是关于如何使用全局/通用 node_modules 而不是本地 node_modules?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 VS Code 打开全局安装的 node_modules

从“node_modules”以外的位置引用 NodeJS 库而不使用相对路径

Parcel Bundler:从 node_modules 导入 scss 文件而不指定完整路径?

如何使 sass 文件全局化,而不是在每个文件中导入它并膨胀包大小?

NPM:在node_modules目录中编辑es6编写的插件而不进行转换

如何使用 npm 全局安装模块?