Référence MSBuild pour le système de projet JavaScript
Cet article fournit des informations de référence sur les propriétés et les éléments MSBuild que vous pouvez utiliser pour configurer des projets basés sur le système de projet JavaScript (JSPS), qui utilisent le format .esproj.
Note
Les propriétés décrites dans cet article étendent les propriétés que MSBuild fournit par défaut. Pour obtenir la liste des propriétés MSBuild courantes, consultez propriétés MSBuild communes.
Propriétés ShouldRun
Les propriétés MSBuild suivantes sont documentées dans cette section :
ShouldRunNpmInstall
La propriété ShouldRunNpmInstall
spécifie s’il faut exécuter ou non npm install
sur les commandes Build et Restore. La valeur par défaut de la propriété est true
si elle n’est pas définie.
<PropertyGroup>
<ShouldRunNpmInstall>false</ShouldRunNpmInstall>
</PropertyGroup>
Deux scénarios courants où l’exécution de npm install
n’est pas souhaitable sont les suivants :
- Lorsqu’un gestionnaire de package non-npm (tel que yarn ou pnpm) est utilisé. Dans ce scénario, la meilleure solution consiste à créer une cible qui s’exécute avant
BeforeRestore
pour exécuter manuellement l’installation. - Lorsqu’un mécanisme d’installation de package global existe dans la solution qui rend inutile l’exécution d’installations individuelles.
ShouldRunBuildScript
La propriété ShouldRunBuildScript
spécifie s’il faut ou non exécuter npm run build
sur les commandes Build. La valeur par défaut de la propriété est true
si elle n’est pas définie.
<PropertyGroup>
<ShouldRunBuildScript>false</ShouldRunBuildScript>
</PropertyGroup>
Pour les projets contenant uniquement JavaScript qui ne nécessitent pas de génération, définissez cette propriété sur false
. Les projets React, Vue et Angular nouvellement créés tombent généralement dans cette catégorie. Dans ce scénario, la génération est utilisée pour la production et non pour le débogage. Notez que les commandes Build
et Publish
sont distinctes dans les projets JSPS, et Publish
s’exécute toujours même si cette propriété est définie.
Propriétés de la commande
Les propriétés de commande sont des propriétés destinées à mapper des scripts package.json courants aux cibles MSBuild. Les valeurs par défaut sont prises en charge pour toutes ces propriétés, comme décrit dans cette section.
Définissez ces propriétés lors de l’utilisation de gestionnaires de package autres que npm, ou des moteurs de script tels que gulp
.
Les propriétés MSBuild suivantes sont décrites dans cette section :
BuildCommand
La propriété BuildCommand
spécifie le comportement de la cible build
. Si le package.json associé contient un script build
ou compile
, la valeur de BuildCommand
par défaut est déjà définie pour les exécuter.
Pour modifier la commande, incluez npm run
lors de l’utilisation de npm
.
<PropertyGroup>
<BuildCommand>npm run build</BuildCommand>
</PropertyGroup>
StartupCommand
La propriété StartupCommand
spécifie le comportement de la cible dotnet run
. Si le package.json
associé contient un start
, server
ou un script dev
, la valeur de StartupCommand
par défaut est déjà définie pour exécuter ces scripts.
Si vous modifiez la commande, incluez npm run
lors de l’utilisation de npm
.
<PropertyGroup>
<StartupCommand>npm run serve</StartupCommand>
</PropertyGroup>
TestCommand
La propriété TestCommand
spécifie le comportement de la cible test
. Si le package.json
associé contient un script test
, la valeur TestCommand
par défaut est déjà définie pour exécuter ce script.
Si vous modifiez la commande, incluez npm run
lors de l’utilisation de npm
.
<PropertyGroup>
<TestCommand>ng test</TestCommand>
</PropertyGroup>
CleanCommand
La propriété CleanCommand
spécifie le comportement de la cible clean
. Si le package.json
associé contient un script clean
, la valeur CleanCommand
par défaut est déjà définie pour exécuter ce script.
Si vous modifiez la commande, incluez npm run
lors de l’utilisation de npm
.
<PropertyGroup>
<CleanCommand>npm run clean</CleanCommand>
</PropertyGroup>
PublishCommand
La propriété PublishCommand
spécifie le comportement de la cible publish
. Si le package.json
associé contient un script publish
, la valeur PublishCommand
par défaut est déjà définie pour exécuter ce script. Dans npm, il est courant d’avoir des scripts de pré-publication et post-publication, qui s’exécutent également.
Si vous modifiez la commande, incluez npm run
lors de l’utilisation de npm
.
<PropertyGroup>
<PublishCommand>npm run publish</PublishCommand>
</PropertyGroup>
Voir aussi
- référence de schéma MSBuild
- propriétés MSBuild courantes
- propriétés MSBuild pour le pack NuGet
- propriétés MSBuild pour le de restauration NuGet
- Personnaliser une de build