ES6 中的模板文字经常被吹捧为强大的文本操作工具,但一个棘手的问题仍然存在:它们真的可以重用吗?
无法实现的期望
乍一看,模板文字似乎只在声明时承诺动态替换。这就引出了一个问题:什么是保持静态的模板?
打破循环
与流行的看法相反,模板文字可以使用函数通过运行时替换来重新焕发活力构造函数作为中介:
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!
可重用模板剖析
此技术允许以下内容:
解决警告
虽然此方法提供了复苏的功能,但有一些警告:
尽管有这些限制,但很明显,只要有一点独创性,模板文字就可以超越其传统限制并变得真正可重用。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3