Bug*_*ang 5 c# visual-studio npm reactjs asp.net-core
我正在构建一个以 ASP.NET Core Web API 作为后端,以 React SPA 作为前端的项目,文件夹结构如下所示:
WebApiProject
?
??? ClientApp/
? ??? public/
? ??? src/
? ??? package.json
?
??? Controller/
??? Models/
??? appsettings.json
??? Program.cs
??? Startup.cs
Run Code Online (Sandbox Code Playgroud)
当我在 React 项目中添加新的 npm 模块(将更新 package.json),并推送到我们团队的 Git repo 时,其他团队成员必须在他们拉新提交后手动npm install在ClientApp目录中执行此操作,否则构建过程将失败缺少依赖项。
对于前端开发者来说,这很正常,但对于一些只专注于后端开发的开发者来说,就相当麻烦,他们必须做一些额外的过程才能构建项目(他们通常只是ctrl + F5和去就好了)。
我尝试了以下方法:
Tools -> Options -> External Web Tools,我认为这会承认 IDE 为我做这项工作,但似乎不是。.csproj文件提供了这样的方法:WebApiProject
?
??? ClientApp/
? ??? public/
? ??? src/
? ??? package.json
?
??? Controller/
??? Models/
??? appsettings.json
??? Program.cs
??? Startup.cs
Run Code Online (Sandbox Code Playgroud)
在发布时,这似乎是 ASP.NET 项目的某种自动脚本,但我不太知道如何调整它以使其在开发模式构建时完成工作。
有没有办法使npm installASP.NET IDE 构建过程单独出现?换句话说,我正在寻找一种在构建 ASP.NET 项目时自动安装 npm 模块的方法。
Ton*_*Ngo 12
您的配置是正确的,但这仅适用于发布您的项目将其添加到您的 csproj 文件中
<Target Name="DebugEnsureNodeEnv" BeforeTargets="Build" Condition=" '$(Configuration)' == 'Debug' And !Exists('$(SpaRoot)node_modules') ">
<!-- Ensure Node.js is installed -->
<Exec Command="node --version" ContinueOnError="true">
<Output TaskParameter="ExitCode" PropertyName="ErrorCode" />
</Exec>
<Error Condition="'$(ErrorCode)' != '0'" Text="Node.js is required to build and run this project. To continue, please install Node.js from https://nodejs.org/, and then restart your command prompt or IDE." />
<Message Importance="high" Text="Restoring dependencies using 'npm'. This may take several minutes..." />
<Exec WorkingDirectory="$(SpaRoot)" Command="npm install" />
</Target>
Run Code Online (Sandbox Code Playgroud)
这将确保您的项目npm install在启动 ASP.Net Core 项目之前运行
| 归档时间: |
|
| 查看次数: |
5748 次 |
| 最近记录: |