Existe-t-il un raccourci pour renommer un composant avec la CLI angulaire autre que la modification manuelle de tous les fichiers de composant tels que le nom du dossier, .css, .ts, spec.ts et app.module.ts?
ng destroy
vous n'avez pas de chance ...
Existe-t-il un raccourci pour renommer un composant avec la CLI angulaire autre que la modification manuelle de tous les fichiers de composant tels que le nom du dossier, .css, .ts, spec.ts et app.module.ts?
ng destroy
vous n'avez pas de chance ...
Réponses:
Non!
Il n'y a pas de commande qui changera le nom de tous les fichiers générés à l'aide de la commande de création du composant. Alors créé ts
, html
, css/scss
, les .spec.ts
fichiers doivent être renommés / modifié manuellement.
Je suis un utilisateur fréquent de angular cli
et je pense que ce serait une commande agréable, car nous créons juste des composants angulaires et devons les renommer. Comme cette commande de changement de nom n'est pas là, supprimer le composant angulaire créé, la directive, etc. et exécuter à nouveau la commande pour créer le composant est vraiment pénible.
Voici le lien de discussion pour ajouter cette fonctionnalité renommer le composant angulaire
WebStorm 2018.1.2
mots permettent de renommer le composant mais ne l'ont jamais utilisé. essaiera plus tard un jour
Actuellement, Angular CLI ne prend pas en charge la fonctionnalité de renommer ou de refactoriser le code.
Vous pouvez obtenir une telle fonctionnalité à l'aide de certains IDE.
Intellij, Eclipse, VSCode etc. a le support par défaut du refactoring.
De nos jours, VSCode montre une tendance à la hausse, personnellement, je suis fan de cela
Refactoring avec VSCode
Détermination de la référence : - VS Code vous aide à trouver toutes les références d'une variable en sélectionnant la variable et en appuyant sur raccourci SHIFT
+ F12
. Cela fonctionne incroyablement bien avec Type Script.
Renommer toutes les instances de référence : - Après avoir trouvé toutes les références sur lesquelles vous pouvez appuyer F2
, vous ouvrirez une fenêtre contextuelle et vous pourrez changer la valeur et cliquer sur Entrée, cela mettra à jour toutes les instances de référence.
Renommer les fichiers et les importations Vous pouvez renommer un fichier et ses références d'importation avec un plugin. Plus de détails peuvent être trouvés ici
Avec les étapes ci-dessus après avoir renommé les variables et les fichiers, vous pouvez renommer le composant angulaire.
voir angular-rename
installer
npm install -g angular-rename
utilisation
$ ./angular-rename OldComponentName NewComponentName
Alors que l'OP demande une commande CLI, certaines des réponses se concentrent sur les IDE. Dans cette réponse, je confirme simplement que le WebStorm / IntelliJ actuel permet de renommer le composant. Il suffit de tenter de renommer la classe dans le .ts
fichier. Vous serez présenté avec:
et le changement de nom sera effectué dans tous les endroits pertinents.
Comme l'indique la première réponse, il n'existe actuellement aucun moyen de renommer les composants, nous ne parlons donc que de solutions de contournement! C'est ce que je fais:
Créez le nouveau composant que vous avez aimé.
ng générer le composant newName
Utilisez l'éditeur de code Visual Studio ou tout autre éditeur pour déplacer facilement le code / les éléments côte à côte!
Sous Linux, utilisez grep & sed (rechercher et remplacer) pour rechercher / remplacer les références.
grep -ir "ancien nom"
cd votre dossier
sed -i 's / ancienNom / nouveauNom / g' *
Personnellement, je n'ai trouvé aucune commande pour le même. Il suffit de faire un nouveau composant (nom renommé) et copier - coller les années précédentes composantes html
, css
et ts
. De ts
toute évidence, le nom de la classe serait remplacé. C'est la méthode la plus sûre mais prend un peu de temps.