NPM:我们可以将node_modules存储到一个公共文件夹中并在Angular项目中使用它吗?

时间:2018-11-10 08:13:58

标签: angular npm continuous-integration node-modules package.json

我们可以将node_modules存储到一个公共文件夹中,而不是本地存储库文件夹(node_modules)中,然后将这个公共文件夹用于angular项目吗?   我将通过流程图解释我的要求: enter image description here

我知道它的建议,强烈建议我们将依赖项本地放置在node_modules文件夹中,以便将它们更快,更可靠地加载。 但是我仍然试图创建一个包含本地模块的通用本地仓库(例如maven中的m2)。

  • 首先,这是个好主意吗?(在我看来,如果我能够做到这一点,则CD进程将从20- 25分钟)[我们执行干净的构建,因此代理从存储库中清除本地更改,因此npm install是必需的]

  • 所有依赖项均为固定版本(不会自动升级)

  • 如何配置npm来将软件包存储到公共文件夹中 本地node_modules

  • 如何将常见存储库中存在的软件包导入我的Angular中 代码库

有人可以帮我吗? ??

2 个答案:

答案 0 :(得分:4)

我终于能够通过实现Yarn来实现这一目标。

我们必须将缓存路径设置为。 :

const employees=[{"EmployeeID":"100A","FirstName":"Downs","aval":[{"start":"11-19","end":"2","ava":"30","health":"4"},{"start":"11-20","end":"2","ava":"40","health":"4"},{"start":"11-21","end":"2","ava":"50","health":"4"},{"start":"11-22","end":"2","ava":"60","health":"4"}]},{"EmployeeID":"100B","FirstName":"Mckenzie","aval":[{"start":"11-19","end":"2","ava":"1","health":"4"},{"start":"11-20","end":"2","ava":"2","health":"4"},{"start":"11-21","end":"2","ava":"3","health":"4"},{"start":"11-22","end":"2","ava":"4","health":"4"}]},];

const res = employees.map(({ EmployeeID, aval }) => (
  aval.reduce((a, { start, ava }) => {
    a[start] = ava;
    return a;
  }, { EmployeeID })
));
console.log(res);

实施此操作后。我能够成功达到上述要求。

答案 1 :(得分:0)

选项1:

您可以将node_modules文件夹移至src / lib文件夹内,并更新package.json以指向本地src / lib路径。为此,我们需要使用纱线。

选项2:

您可以将所有node_modules移至自定义git repo,在package.json / config.xml中将结帐路径修改为自定义git repo。在npm install期间,它将从自定义git repo加载。

how to specify local modules as npm package dependencies