J'ai essayé d'utiliser "ng destroy component foo" et il me dit "La commande destroy n'est pas prise en charge par Angular-CLI"
Comment supprimer correctement les composants avec Angular CLI?
angular
angular-cli
Jus10
la source
la source
git checkout src
).Réponses:
destroy
ou quelque chose de similaire peut arriver à la CLI, mais ce n'est pas un objectif principal pour le moment. Vous devrez donc le faire manuellement.Supprimez le répertoire du composant (en supposant que vous ne l'avez pas utilisé
--flat
), puis supprimez-le de celuiNgModule
dans lequel il est déclaré.Si vous ne savez pas quoi faire, je vous suggère d'avoir une application "propre" qui ne signifie aucun
git
changement en cours. Générez ensuite un composant et voyez ce qui est modifié dans le référentiel afin que vous puissiez revenir en arrière de ce que vous devrez faire pour supprimer un composant.Mettre à jour
Si vous expérimentez simplement ce que vous voulez générer, vous pouvez utiliser l'
--dry-run
indicateur pour ne produire aucun fichier sur le disque, il suffit de voir la liste des fichiers mis à jour.la source
la source
Puisqu'il n'est pas encore pris en charge en utilisant la CLI angulaire
voici donc la manière possible, avant cela, veuillez observer ce qui se passe lorsque vous créez un composant / service à l'aide de CLI (ex.
ng g c demoComponent
).demoComponent
(ng g c demoComponent
).HTML,CSS,ts
et unspec
fichier dédié à demoComponent.alors faites-le dans l'ordre inverse
app.module.ts
lors de la suppression de la dépendance, vous devez faire deux choses.
la source
À l'aide de Visual Studio Code, supprimez le dossier des composants et voyez dans l'Explorateur de projets (côté gauche) les fichiers de couleur rouge, ce qui signifie que les fichiers sont affectés et produisent des erreurs. Ouvrez chaque fichier et supprimez le code qui utilise le composant.
la source
Actuellement, la CLI angulaire ne prend pas en charge une option pour supprimer le composant, vous devez le faire manuellement.
la source
J'ai écrit un script bash qui devrait automatiser le processus écrit par Yakov Fain ci-dessous. Il peut être appelé comme ./removeComponent myComponentName Cela n'a été testé qu'avec Angular 6
la source
Je ne sais pas si c'est la meilleure façon, mais cela a fonctionné pour moi.
Je viens de sauvegarder et de rafraîchir l'application et cela a fonctionné.
la source
Réponse pour Angular 2+
Supprimez le composant
from imports and declaration array
app.modules.ts.Vérifiez ensuite que sa référence est ajoutée dans un autre module, si oui, supprimez-la et
enfin
delete that component Manually
depuis l'application et vous avez terminé.Ou vous pouvez également le faire dans l'ordre inverse.
la source
Depuis app.module.ts:
Ensuite , supprimez le dossier du composant que vous souhaitez supprimer et ses fichiers inclus (
.component.ts
,.component.html
,.component.css
et.component.spec.ts
).Terminé.
-
J'ai lu des gens dire de l'effacer de main.ts. Vous n'étiez pas censé l'importer à partir de là, car il importe déjà AppModule, et AppModule est celui qui importe tous les composants que vous avez créés.
la source
J'ai dû supprimer une directive Angular 6 dont le fichier de spécifications était erroné. Même après avoir supprimé les fichiers incriminés, supprimé toutes les références et reconstruit l'application, TS signalait toujours la même erreur. Ce qui a fonctionné pour moi, c'était le redémarrage de Visual Studio - cela a effacé l'erreur et toutes les traces de l'ancienne directive indésirable.
la source
Tout d'abord, supprimez le dossier des composants, que vous devez supprimer, puis supprimez ses entrées que vous avez faites dans les fichiers "ts".
la source
Si vous recherchez une commande dans CLI, alors ans est NON pour l'instant. Mais vous pouvez le faire manuellement en supprimant le dossier des composants et toutes les références.
la source
Ce n'est pas pris en charge par Angular CLI et ils ne sont pas d'humeur à l'inclure de sitôt.
Voici le lien vers le problème réel créé - https://github.com/angular/angular-cli/issues/1776
Et une capture d'écran de la solution des officiels -
la source