Les littéraux de modèles dans ES6 sont souvent présentés comme de puissants outils de manipulation de texte, mais une question lancinante persiste : peuvent-ils vraiment être réutilisés ?
Attentes insatisfaisantes
À première vue, les littéraux de modèles semblent promettre des substitutions dynamiques uniquement au moment de la déclaration. Cela soulève la question : qu'est-ce qu'un modèle qui reste statique ?
Briser le cycle
Contrairement à la croyance populaire, les littéraux de modèles peuvent être revigorés avec des substitutions d'exécution à l'aide de la fonction constructeur comme intermédiaire :
const template = "Hello ${this.name}!"; const variables = { name: "world" }; function fillTemplate(str, data) { return new Function("return `" str "`;").call(data); } console.log(fillTemplate(template, variables)); // Output: Hello world!
Anatomie d'un modèle réutilisable
Cette technique permet les opérations suivantes :
Réponse aux mises en garde
Bien que cette méthode offre des fonctionnalités ressuscitées, il existe certaines mises en garde :
Malgré ces limitations, il est clair qu'avec un peu d'ingéniosité, les modèles littéraux peuvent transcender leurs limites conventionnelles et devenir véritablement réutilisables.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3