web-dev-qa-db-fra.com

Comment publier un projet Angular-CLI en tant que module NPM?

Je crée mon propre module Angular 2 avec Angular-CLI. Comment préparer le module à import? Comment publier le résultat final sur NPM pour l'utiliser avec d'autres projets Angular2?

12
piernik

J'ai réussi à publier mon projet sur npm. Voici ce que j'ai fait.

Dans le projet angular-cli, mon module est allé dans un dossier unique (component-warpper). Dans ce dossier, j'ai ajouté index.ts avec la liste des modules et composants à exporter. J'ai aussi ajouté le fichier package.json (capture d'écran).

Ensuite, en ligne de commande, accédez à ce dossier et à npm publish. Maintenant, je peux l'importer en tant que node_modules dans d'autres projets.

 enter image description here

9
piernik

Cela s'est avéré être une question sur la façon de publier un NgModule Angular2 réalisé avec Angular-CLI à NPM. Pour plus d'informations sur la publication sur NPM, visitez le site https://docs.npmjs.com/misc/developers , mais les détails des projets Angular-CLI et des modules Angular 2 me dépassent Je n'ai pas publié de modules Angular2 dans NPM auparavant.


Les importations de style import { MyModule } from 'package/myModule'; concernent les packages publiés sur NPM et sont résolues en recherchant les fichiers requis dans les dossiers node_modules locaux et globaux. Vous pouvez émuler ceci en publiant un paquet vide dans NPM, puis en utilisant la commande link pour lier votre code, mais je considérerais cet abus comme un abus des services de NPM au fur et à mesure de leur solution de paquet privé. S'il s'agit d'un module public, n'oubliez pas de publier uniquement lorsque cela est nécessaire, et utilisez une version linked pour le développement.

Pour importer un module de votre projet, vous avez besoin du chemin relatif, plus proche de import { MyModule } from './myModule/my.module';.

0
gelliott181