Dela via


MSBuild-referens för JavaScript Project System

Den här artikeln innehåller referensinformation för MSBuild-egenskaper och objekt som du kan använda för att konfigurera projekt baserat på JavaScript Project System (JSPS), som använder formatet .esproj.

Not

Egenskaperna som beskrivs i den här artikeln utökar de egenskaper som MSBuild tillhandahåller som standard. En lista över vanliga MSBuild-egenskaper finns i Vanliga MSBuild-egenskaper.

ShouldRun-egenskaper

Följande MSBuild-egenskaper dokumenteras i det här avsnittet:

ShouldRunNpmInstall

Egenskapen ShouldRunNpmInstall anger om du vill köra eller inte köra npm install på kommandona Skapa och återställa. Standardvärdet för egenskapen är true om det inte har angetts.

<PropertyGroup>
  <ShouldRunNpmInstall>false</ShouldRunNpmInstall>
</PropertyGroup>

Två vanliga scenarier där det är önskvärt att inte köra npm install är:

  1. När en pakethanterare som inte är npm (till exempel yarn eller pnpm) används. I det här scenariot är den bästa lösningen att skapa ett mål som körs innan BeforeRestore för att köra installationen manuellt.
  2. När det finns en global paketinstallationsmekanism i lösningen som gör det onödigt att köra enskilda installationer.

ShouldRunBuildScript

Egenskapen ShouldRunBuildScript anger om npm run build ska köras på Build-kommandon. Standardvärdet för egenskapen är true om det inte har angetts.

<PropertyGroup>
  <ShouldRunBuildScript>false</ShouldRunBuildScript>
</PropertyGroup>

För projekt som endast innehåller JavaScript som inte behöver byggas anger du den här egenskapen till false. Nyligen skapade React-, Vue- och Angular-projekt hamnar vanligtvis i den här kategorin. I det här scenariot används build för produktion och inte för felsökning. Observera att kommandona Build och Publish är separata i JSPS-projekt och att Publish fortfarande körs även om den här egenskapen har angetts.

Kommandoegenskaper

Kommandoegenskaper är egenskaper som är avsedda att mappa vanliga package.json skript till MSBuild-mål. Standardvärden stöds för alla dessa egenskaper enligt beskrivningen i det här avsnittet.

Ange dessa egenskaper när du använder andra pakethanterare än npm eller skriptmotorer som gulp.

Följande MSBuild-egenskaper beskrivs i det här avsnittet:

BuildCommand

Egenskapen BuildCommand anger beteendet för det build målet. Om den associerade package.json innehåller ett build- eller compile-skript är standardvärdet BuildCommand redan inställt på att köra dem.

Om du vill ändra kommandot tar du med npm run när du använder npm.

<PropertyGroup>
  <BuildCommand>npm run build</BuildCommand>
</PropertyGroup>

StartupCommand

Egenskapen StartupCommand anger beteendet för det dotnet run målet. Om den associerade package.json innehåller ett start, servereller dev skript är standardvärdet StartupCommand redan inställt på att köra skripten.

Om du ändrar kommandot tar du med npm run när du använder npm.

<PropertyGroup>
  <StartupCommand>npm run serve</StartupCommand>
</PropertyGroup>

TestCommand

Egenskapen TestCommand anger beteendet för det test målet. Om den associerade package.json innehåller ett test skript är standardvärdet TestCommand redan inställt på att köra skriptet.

Om du ändrar kommandot tar du med npm run när du använder npm.

<PropertyGroup>
  <TestCommand>ng test</TestCommand>
</PropertyGroup>

CleanCommand

Egenskapen CleanCommand anger beteendet för det clean målet. Om den associerade package.json innehåller ett clean skript är standardvärdet CleanCommand redan inställt på att köra skriptet.

Om du ändrar kommandot tar du med npm run när du använder npm.

<PropertyGroup>
  <CleanCommand>npm run clean</CleanCommand>
</PropertyGroup>

PublishCommand

Egenskapen PublishCommand anger beteendet för det publish målet. Om den associerade package.json innehåller ett publish skript är standardvärdet PublishCommand redan inställt på att köra skriptet. I npm är det vanligt att ha för- och efterpubliceringsskript, som också körs.

Om du ändrar kommandot tar du med npm run när du använder npm.

<PropertyGroup>
  <PublishCommand>npm run publish</PublishCommand>
</PropertyGroup>

Se även