Espero que todos estén muy bien.
En realidad, estoy tratando de crear una herramienta de automatización de correo electrónico en la que un usuario pueda enviar un correo electrónico a varios destinatarios y quiero implementar una función en la que el usuario pueda escribir el cuerpo del correo electrónico en un archivo de texto, por ejemplo, Hola $ {nombre}, ¿cómo están? usted ${nombre} y el programa simplemente leen el cuerpo de este archivo de texto y reemplazan ${nombre} con los nombres de los destinatarios que provienen del archivo .csv.
Problema : el problema al que me enfrento aquí es que, en lugar de reemplazar ${nombre} con nombres, simplemente envía el texto exacto leído del archivo, por ejemplo, en lugar de Hola Juan, ¿cómo estás?, envía Hola ${nombre}, ¿cómo estás? Entonces, ¿hay alguna forma de convertir texto sin formato en una plantilla JS literal o alguna otra forma de realizar esta tarea? Sería una gran ayuda.
Gracias de antemano
Puedes probar el módulo vm :
import vm from 'vm'; const context = { name: 'Jane', }; vm.createContext(context); const templateFileContent = 'Hello ${name}, how are you ${name}'; const interpolatedString = vm.runInContext(`\`${templateFileContent}\``, context); console.log(interpolatedString);