Rätsel bezüglich der Wiederverwendbarkeit in ES6-Vorlagenliteralen
Das Hauptanliegen in dieser Diskussion dreht sich um den vermuteten Mangel an Wiederverwendbarkeit in ES6-Vorlagenliteralen. Herkömmliche Demonstrationen betonen Ersetzungen zum Zeitpunkt der Deklaration und verbieten Laufzeitänderungen.
Lösung: Nutzung des Funktionskonstruktors
Um dieses Problem anzugehen, ergibt sich eine praktikable Lösung in Form von Funktionskonstruktor. Bei diesem Ansatz wird die Vorlagenzeichenfolge in eine Funktion umgewandelt.
Beachten Sie den folgenden Ausschnitt:
<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>
Durch Aufrufen dieser Funktion können Sie die gewünschte Zeichenfolge generieren und gleichzeitig die Flexibilität haben, Variablen zu ändern Laufzeit.
Vorteile dieses Ansatzes:
Potenzielle Nachteile:
Zusammenfassend lässt sich sagen, dass es ES6-Vorlagenliteralen von Natur aus an echter Wiederverwendbarkeit mangelt Der Funktionskonstruktor bietet eine Problemumgehung, die das gewünschte Verhalten beim Erstellen und Ändern von Vorlagen zur Laufzeit emuliert.
Das obige ist der detaillierte Inhalt vonKönnen ES6-Vorlagenliterale wirklich wiederverwendbar sein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!