我想将一些变量传递到我拥有的html文件中,然后通过电子邮件发送。其中大部分与问题无关,所以我将采用一个基本的例子。
基本模板文字的工作原理如下:
myLink = "google.com"
myID = "testID"
template = `Please visit ${myLink}/${myID} and let them know that ${myID} sent you.`
这将使模板返回:
Please visit google.com/testID and let them know that testID sent you.
我现在已将模板代码复制到外部文件中,并使用fs.readFileSync
将文件读入变量。问题是,在读取文件后,它实际上并未评估${myLink}
和${myID}
值。反正有没有完成这个?如果模板文字无法做到这一点,请指点我正确的方向吗?
答案 0 :(得分:7)
您不想阅读该文件,首先将其作为字符串读取,其次有更好的方法来处理JS模块。
你想要的是从一个文件导出寺庙字符串作为一个函数,并将其导入另一个文件。
文件1:
module.exports = (myLink, myID) => `Please visit ${myLink}/${myID} and let them know that ${myID} sent you.`
文件2:
const createString = require('./file1');
console.log(createString('google.com', 'testID'));
答案 1 :(得分:1)
我知道eval并不太受欢迎,但这似乎是解决您问题的唯一方法。
eval("`"+str+"`");
可以在此处找到一个有效的示例:https://htmlpen.com/-ae6h12en6q/editor/