L'énigme de la réutilisabilité dans les littéraux de modèles ES6
La principale préoccupation soulevée dans cette discussion tourne autour du manque présumé de réutilisabilité dans les littéraux de modèles ES6. Les démonstrations conventionnelles mettent l'accent sur les substitutions au moment de la déclaration, interdisant les modifications à l'exécution.
Solution : tirer parti du constructeur de fonction
Pour résoudre ce problème, une solution viable émerge sous la forme du Constructeur de fonctions. Cette approche consiste à convertir la chaîne de modèle en fonction.
Considérez l'extrait suivant :
<code class="js">const templateString = `Hello ${this.name}!`; const templateVars = { name: "world" }; const fillTemplate = function(templateString, templateVars){ return new Function("return `" + templateString + "`;").call(templateVars); }; console.log(fillTemplate(templateString, templateVars));</code>
En appelant cette fonction, vous pouvez générer la chaîne souhaitée tout en possédant la flexibilité de modifier les variables à runtime.
Avantages de cette approche :
Inconvénients potentiels :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!