Je commence à utiliser angular-cli et j'ai déjà beaucoup lu pour trouver une réponse sur ce que je veux faire ... pas de succès, alors je suis venu ici.
Existe-t-il un moyen de créer un composant dans un nouveau module?
par exemple: ng g module newModule
ng g component newComponent
(comment ajouter ce composant à newModule ??)
parce que le comportement par défaut angular-cli est de mettre tous les nouveaux composants à l'intérieur app.module
. Je voudrais choisir où sera mon composant, afin de pouvoir créer des modules séparés et ne pas avoir tous mes composants à l'intérieur app.module
. Il est possible de le faire en utilisant angular-cli ou dois-je le faire manuellement?
la source
ng g component moduleName/componentName
.--module
option comme:ng g component <your component> --module=<your module name>
la source
--dry-run
Cela vaut la peine d'ajouter à la fin de cela juste pour voir ce qui sera affecté, c'est un bonng g component path/to/myComponent --module=app.module.ts --dry-run
est une commande très utile; juste pour vous assurer que votre composant est créé dans le bon répertoire.Je ne sais pas si la réponse d'Alexander Ciesielski était peut-être correcte au moment de la rédaction de cet article, mais je peux vérifier que cela ne fonctionne plus. Peu importe le répertoire du projet dans lequel vous exécutez la CLI angulaire. Si vous tapez
il générera un composant et l'importera dans le fichier app.module.ts
La seule façon d'utiliser CLI pour l'importer automatiquement dans un autre module est de spécifier
où moduleName est un module que vous avez déjà défini dans votre projet. Si le moduleName n'existe pas, il placera le composant dans le répertoire moduleName / newComponent mais l'importera toujours dans app.module
la source
ng g module newModule
2.ng g component new-module/newComponent
selon lui devrait être new-module au lieu de newModulemkdir
un dossier, puis j'ai exécuté le composant ng newComponent à l'intérieur du dossier nouvellement créé.ng g component moduleName/newComponent -m moduleName
ng generate module {modComName}
1) J'ai créé le dossier 2) J'ai créé un fichier de module dans le dossier du même nom; la commande enng generate component {modComName}
fait 1) Création d'un fichier de composant dans le dossier du même nom 2) Modification du module pour importer le composantng
ajoute des importations à la fin du tableau; mais vous voudrez peut-être: "L'ordre des routes dans la configuration compte et c'est par conception."Je n'ai pas trouvé de réponse qui montrait comment utiliser le cli pour générer un composant dans un dossier de module de niveau supérieur et que le composant avait également ajouté automatiquement la collection de déclarations du module.
Pour créer le module, exécutez ceci:
Pour créer le composant dans le dossier du module foo et l'ajouter à la collection de déclarations de foo.module.ts, exécutez ceci:
Et le cli échafaudera le module et le composant comme ceci:
--EDIT la nouvelle version du cli angulaire se comporte différemment. 1.5.5 ne veut pas de nom de fichier de module donc la commande avec v1.5.5 devrait être
la source
--module
argument; la documentation dit "Permet la spécification du module de déclaration." ; J'ajouterais--module
précise quel module existant doit être modifié pour importer le module que vous êtes sur le point de créerVous pouvez essayer la commande ci-dessous, qui décrit le,
Ensuite, votre commande sera comme:
la source
Pour Angular v4 et ci-dessus, utilisez simplement:
la source
Specified module does not exist
alors que le module existaituser-settings.module.ts
et que vous souhaitez ajouter un composant,public-info
la commande sera:ng g c PublicInfo -m user-settings
C'est ce qui a fonctionné pour moi :
Si vous souhaitez générer un composant sans son répertoire, utilisez l'
--flat
indicateur.la source
cela générera un module appelé à l'
media
intérieur dumodules
dossier.la première partie de la commande
ng g c modules/media/picPick
générera un dossier de composants appelé dossierpicPick
intérieurmodules/media
contenant notre nouveaumedia
module.la deuxième partie rendra notre nouveau
picPick
composant déclaré dansmedia
module en l'important dans le fichier du module et en l'ajoutant audeclarations
tableau de ce module.la source
Aller au niveau du module / on peut aussi être au niveau racine et taper ci-dessous les commandes
Exemple :
la source
Premier module de génération:
Cela va créer un dossier moduleName puis naviguer vers le dossier module
Et après cela, générer un composant:
Utilisez --flat pour ne pas créer de dossier enfant dans le dossier du module
la source
J'ai des problèmes similaires avec plusieurs modules en application. Un composant peut être créé dans n'importe quel module donc avant de créer un composant, nous devons spécifier le nom du module particulier.
la source
Utilisez cette commande simple:
users
: Le nom de votre module.userlist
: Le nom de votre composant.la source
Selon la documentation Angular, la façon de créer un composant pour un module spécifique est,
"nom de répertoire" = où la CLI a généré le module de fonctionnalités
Exemple :-
Cela génère un dossier pour le nouveau composant dans le dossier du tableau de bord client et met à jour le module de fonctionnalités avec le composant CustomerDashboardComponent
la source
Première course
ng g module newModule
. Puis coursng g component newModule/newModule --flat
la source
J'ai créé un module enfant basé sur des composants avec un dossier racine spécifique
Cette commande cli ci-dessous que j'ai spécifiée, veuillez vérifier
La réparation est le dossier racine de notre module enfant
la source
J'ai rencontré ce problème aujourd'hui lors de l'échafaudage d'une application Angular 9. J'obtiens l'erreur «module n'existe pas» chaque fois que j'ajoute le
.module.ts
ou.module
au nom du module. Le cli n'a besoin que du nom du module sans extension. En supposant que j'avais un nom de module:,brands.module.ts
la commande que j'ai utilisée étaitsupprimez le
--dry-run
une fois que vous avez confirmé que la structure du fichier est correcte.la source
exemple:
la source
Un modèle courant consiste à créer une fonction avec une route, un module à chargement différé et un composant.
Route:
myapp.com/feature
app-routing.module.ts
Structure des fichiers:
Tout cela peut être fait dans le cli avec:
Ou plus court
Ou si vous omettez le nom, le cli vous le demandera. Très utile lorsque vous devez créer plusieurs fonctionnalités
la source
Ajouter un composant à l'application Angular 4 à l'aide de la CLI angulaire
Pour ajouter un nouveau composant Angular 4 à l'application, utilisez la commande
ng g component componentName
. Après l'exécution de cette commande, Angular CLI ajoute un dossiercomponent-name
soussrc\app
. En outre, les références de la même chose sont ajoutéessrc\app\app.module.ts
automatiquement au fichier.Un composant doit avoir une
@Component
fonction de décorateur suivie d'unclass
qui doit êtreexport
édité. La@Component
fonction décoratrice accepte les métadonnées.Ajouter un composant à un dossier spécifique de l'application Angular 4 à l'aide de la CLI angulaire
Pour ajouter un nouveau composant à un dossier spécifique, utilisez la commande
ng g component folderName/componentName
la source
Si vous avez plusieurs applications déclarées dans .angular-cli.json (par exemple dans le cas où vous travaillez sur un module de fonctionnalités)
Vous pouvez :
-a signifie --app (nom)
la source
J'utilise cette commande particulière pour générer des composants à l'intérieur d'un module.
Cette commande générera un composant local sur le module. ou Vous pouvez d'abord changer de répertoire en tapant.
puis créez un composant.
Remarque: le code entre <> représente des noms spécifiques à l'utilisateur.
la source
1.- Créez votre module de fonctionnalités comme d'habitude.
2.- Vous pouvez spécifier le ROOT PATH de votre projet dans --module (uniquement dans --module, (/) root pointe vers votre PROJECT ROOT et N'EST PAS LA ROOT DU SYSTEME !!! )
Exemple réel:
Production:
Testé avec Angular CLI: 9.1.4
la source
Créer un module, un service et un composant dans un module particulier
la source