5

我有一个带有大量 Node.js 模块的 ASP.NET 5 项目。它们安装在node_modules文件夹下。

在开发环境(environment=development)中,我开始wwwroot\lib手动复制所有模块。当这变得乏味时,我写了一个 Gulp 任务来复制它们。现在有很多任务。

是否有任何 ASP.NET 项目设置,以便可以从node_modules根目录而不是从wwwroot\lib?

4

2 回答 2

5

编辑:出于开发目的,只需再添加一个UseStaticFiles中间件。到你的Startup.cs->public void Configure()方法 -> 添加这个:

app.UseStaticFiles();
app.UseStaticFiles(new StaticFileOptions()
{
    FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), @"node_modules")),
    RequestPath = new PathString("/node_modules")
});

UseStaticFiles使用了两次。首先,从默认提供静态文件,wwwroot第二次提供/node_modules文件。如此处所述。

在生产环境中要小心。

于 2016-11-29T15:59:29.027 回答
3

在同一个目录下应该有一个package.json文件node_modules,你只需要将它复制到新的位置,然后从命令行运行npm install来安装包。然后新模块将很快在新位置可用。

于 2016-11-29T08:40:16.717 回答