web-dev-qa-db-fra.com

ng générer un composant dans un sous-répertoire

J'ai la structure de répertoire suivante

 enter image description here

Je voudrais créer une nouvelle page, disons une page À propos ..__ Je veux la mettre dans src/app/page/about/*

Alors j'essaye:

ng generate component pages/about

mais j'obtiens cette erreur:

Error: More than one module matches. Use skip-import option to skip importing the component into the closest module.
More than one module matches. Use skip-import option to skip importing the component into the closest module.

Est-ce une bonne idée d’utiliser des pages pour stocker mes pages séparées? Comment puis-je générer des composants dans un sous-répertoire à l’aide de angular-cli?

11
Alexander Mills

Parce qu'il y a 2 modules (app.module.ts, shared.module.ts) trouvés, la CLI ne sait pas dans quel module déclarer votre composant. Pour contourner ce problème, vous devez indiquer à la CLI le module dans lequel vous souhaitez déclarer votre composant avec l'option module

ng generate component pages/about --module=app.module
// or
ng generate component pages/about --module=shared.module
27
Brocco

En général, il est nécessaire de générer un composant dans un chemin particulier ou pas plus d'un module parent, comme ci-dessus.

$> ng g composant chemin/nom du composant
Pas besoin de src/app/chemin/nom-composant -> chemin .si c'est l'application AgnularCLI.

si vous mentionnez src/app "Erreur: Plusieurs modules correspondent. Utilisez skip-import".

2
gnganpath

Pour créer un composant dans le cadre d'un nouveau module, vous pouvez également procéder comme suit:

cd newModule to change directory into the newModule folder

ng g c newComponent to create a component as a child of the module.

Cela a fonctionné pour moi. J'ai eu la même erreur que vous avez reçu.

0
user3444999