Version TypeScript: 3.8.1-rc
Termes de recherche:
Repo
Pour du code tel que
import ImageEditor from 'tui-image-editor';
Placez le curseur sur la chaîne
Punaise:
Une refactorisation convert to template string
est offerte. Cela ne sert à rien.
Je suggère de ne montrer convert to template string
si vous êtes sur une expression de concaténation de chaîne.
Il est donc clair que c'est idiot car il y a certaines positions où une chaîne de modèle n'est pas valide - je pense qu'il serait probablement correct de désactiver cela pour les chaînes simples, mais nous devrions revoir si nous voulons l'activer pour toutes les chaînes et le désactiver pour des positions absurdes comme
Je préfère ne voir cette refactorisation que lorsque le curseur sur une expression de concaténation de chaîne
De plus, nous voulons probablement résoudre ce problème pour la version 3.8 (que ce soit pour la version finale ou dans une version de récupération) car il est plutôt ennuyeux que l'ampoule apparaisse pour chaque chaîne.
Tout comme une opinion contrastée, je trouve en fait ce comportement utile (dans les cas où les chaînes de modèle seraient légales). Après avoir utilisé TS / JS pendant des années, ma mémoire musculaire est maintenant par défaut ${...}
plutôt que +
pour les valeurs de modèle en chaînes, et c'est bien de pouvoir convertir rapidement la chaîne en question en modèle string dans les cas où ce n'est pas déjà fait.
Cela dit @DanielRosenwasser , une autre approche potentielle pourrait être de faire la suggestion si la chaîne en question contient ${
. Juste une pensée. : légèrement_smiling_face:
Hé là 👋
Un avertissement rapide pour soutenir le point de vue de
Pour le contexte, je suis l'auteur d'une extension VS Code qui fournit des refactorisations JS & TS. Nous avions l'habitude de fournir "Convertir en modèle littéral". Nous l'avons supprimé car il est désormais géré par l'éditeur, via TypeScript.
Cependant, il était très valide (et pratique) de passer de:
const a = "I have some apples";
à
const a = `I have some apples`;
Pour commencer à insérer des variables à l'intérieur.
Je comprends que cela a été abandonné comme effet secondaire d'une correction de bogue. Je pense que ce que nous voulons vraiment éviter, c'est de proposer la refactorisation des choses invalides comme les importations. J'ai effectivement implémenté ce genre de vérification dans mon extension.
Vous pouvez consulter https://github.com/nicoespeon/abracadabra/issues/94 pour plus de contexte à ce sujet.
Si vous avez besoin de plus de détails, je serais heureux de vous aider 😄
Je vous remercie!
Commentaire le plus utile
Tout comme une opinion contrastée, je trouve en fait ce comportement utile (dans les cas où les chaînes de modèle seraient légales). Après avoir utilisé TS / JS pendant des années, ma mémoire musculaire est maintenant par défaut
${...}
plutôt que+
pour les valeurs de modèle en chaînes, et c'est bien de pouvoir convertir rapidement la chaîne en question en modèle string dans les cas où ce n'est pas déjà fait.Cela dit @DanielRosenwasser , une autre approche potentielle pourrait être de faire la suggestion si la chaîne en question contient
${
. Juste une pensée. : légèrement_smiling_face: