如何使用从数据库或变量查询的模板文字?

时间:2019-05-29 12:17:12

标签: javascript mysql string ecmascript-6 template-literals

我在MySQL数据库中存储了HTML电子邮件模板。其中大多数包含JavaScript变量。我尝试使用模板文字(例如:off)存储它们,但这不会返回变量,而是确切的字符串。我认为我的问题是因为字符串是用双引号或单引号而不是反引号引起来的。

所以我的JavaScript看起来如下,其中${this.auth.user.name}是从我的MySQL展示查询的对象数组。

template

  

实际输出是Hello $ {this.auth.name}!

我希望Hello Jack的输出!

您有什么想法吗?

预先感谢, 蒂博尔

1 个答案:

答案 0 :(得分:1)

尝试像这样制作new Function

const name = "Jack";
const string = "Hello ${name}";
const actualString = new Function("return `" + string + "`").call(string);
console.log(actualString);