Visual Studio MVC 5 Web项目 - 我应该在项目中包含“node_modules”文件夹吗?

问题描述 投票:0回答:1

我使用NPM来维护我的MVC 5 Web项目中的前端依赖项。我对NPM的一个关键用途是获取Typescript定义。

该项目的组织方式如下:

MySolution
|
|-- MySolution.Web
    |
    |-- Controllers
    |-- node_modules
    |-- Views
    |-- (etc...)

我想知道的是,我是否应该在项目中包含“node_modules”,以及是否应该将“node_modules”包含在源代码管理中。

我问的原因是,一切看起来都很高兴它被排除在外(甚至构建代理,在编译之前进行“NPM恢复”)。

但是,NCrunch抱怨它找不到我的项目的TypeScript文件引用的各种类型的引用。

例如。 Admin.ts引用“/node_modules/@types/knockout/index.d.ts”

我认为将“node_modules”引入Web项目会修复它,但我不确定它是否正确。

asp.net-mvc npm asp.net-mvc-5 ncrunch
1个回答
0
投票

不,您不应该在源代码管理或项目中包含它。

假设你从头开始做一个完整的克隆,你要做的第一个是npm安装,它将恢复所有包并填充该文件夹。这就是为什么你不添加像NuGet包这样的东西的原因。

该文件夹很容易变大,延迟CI / CD管道。正如你自己所说,运行npm install无论如何都可以自动完成。例如,如果你为Visual Studio下载一个git ignore文件,它会带有像默认情况下忽略的那样的东西。

就你的打字稿文件而言,那些也应该没问题。在进行任何工作之前,您首先要进行恢复,并且可以使用Visual Studio Code之类的东西来处理前端文件,并且节点模块是否是解决方案的一部分并不重要。

© www.soinside.com 2019 - 2024. All rights reserved.