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?
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.
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 link
ed 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';
.