web-dev-qa-db-fra.com

commande run angular-cli après ng build

Je me demande comment étendre ng build pour exécuter des tâches une fois qu'il est terminé.

Pour le moment, mon objectif final est de copier mon 'package.json' dans le dossier dist.

Quelque chose comme ça si j'utilisais npm simple:

"postbuild": "cpx ./package.json ./dist/",

Je sais que dans le fichier angular-cli.json, je peux utiliser des "actifs" pour copier des fichiers statiques, mais cela ne fonctionne pas pour les fichiers en dehors de src. Donc, je me demande si je peux faire la tâche de copie une fois la compilation de ng terminée.

19
mrshickadance

Définir un script npm

"build":" "ng build"

et ajoutez également le script de post-construction.

"postbuild": "cpx ./package.json ./dist/",

De cette façon, le script de copie est appelé après avoir exécuté npm run build.

26

Vous pouvez exécuter n'importe quel script personnalisé avant ou après n'importe quel script npm. C'est ce qu'on appelle des "crochets" et il est inclus dans npm. Dans votre cas, vous pouvez exécuter un hook "post" mais gardez à l'esprit qu'il est également possible d'exécuter un hook "pre".

définissez ces 3 scripts dans votre package.json:

"hello": "echo execute hello",
"prehello": "echo execute prehello",
"posthello": "echo execute posthello"

Vous pouvez trouver beaucoup plus d'informations utiles à ce sujet ici: https://www.marcusoft.net/2015/08/pre-and-post-hooks-for-npm-scripting.html

0
pegaltier