Vorlagenliterale in ES6 werden oft als leistungsstarke Textmanipulationswerkzeuge angepriesen, aber es bleibt eine quälende Frage bestehen: Können sie wirklich wiederverwendet werden?
Unerfüllbare Erwartungen
Auf den ersten Blick scheinen Vorlagenliterale dynamische Ersetzungen nur zum Zeitpunkt der Deklaration zu versprechen. Dies wirft die Frage auf: Was ist eine Vorlage, die statisch bleibt?
Den Kreislauf durchbrechen
Entgegen der landläufigen Meinung können Vorlagenliterale durch Laufzeitersetzungen mithilfe der Funktion neu belebt werden Konstruktor als Vermittler:
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 einer wiederverwendbaren Vorlage
Diese Technik ermöglicht Folgendes:
Adressierungsvorbehalte
Diese Methode bietet zwar wiederbelebte Funktionalität, es gibt aber einige Vorbehalte:
Trotz dieser Einschränkungen ist es klar, dass Vorlagenliterale mit ein wenig Einfallsreichtum ihre herkömmlichen Grenzen überschreiten und wirklich wiederverwendbar werden können.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3