Los literales de plantilla en ES6 a menudo se promocionan como poderosas herramientas de manipulación de texto, pero persiste una pregunta persistente: ¿realmente se pueden reutilizar?
Expectativas incumplibles
A primera vista, los literales de plantilla parecen prometer sustituciones dinámicas solo en el momento de la declaración. Esto plantea la pregunta: ¿qué es una plantilla que permanece estática?
Rompiendo el ciclo
Contrariamente a la creencia popular, los literales de plantilla se pueden revitalizar con sustituciones en tiempo de ejecución utilizando la Función constructor como intermediario:
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!
Anatomía de una plantilla reutilizable
Esta técnica permite lo siguiente:
Abordar las advertencias
Si bien este método ofrece una funcionalidad resucitada, existen algunas advertencias:
A pesar de estas limitaciones, está claro que con un poco de ingenio, los literales de plantilla pueden trascender sus límites convencionales y volverse verdaderamente reutilizables.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3