首页  >  文章  >  web前端  >  模板文字可以真正重用吗?

模板文字可以真正重用吗?

Patricia Arquette
Patricia Arquette原创
2024-11-02 13:02:02848浏览

Can Template Literals Be Truly Reused?

模板文字:复兴重用

ES6 中的模板文字经常被吹捧为强大的文本操作工具,但一个棘手的问题仍然存在:它们真的可以重用吗?

无法实现的期望

乍一看,模板文字似乎只在声明时承诺动态替换。这就引出了一个问题:什么是保持静态的模板?

打破循环

与流行的看法相反,模板文字可以通过使用 Function 的运行时替换来重新焕发活力作为中介的构造函数:

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!

可重用模板的剖析

此技术允许以下内容:

  • 运行时插值: 变量是动态填充的,就像在传统模板引擎中一样。
  • 碎片: 模板可以存储在单独的文件中或动态获取。
  • 动态创建:可以动态构建和评估模板。

解决警告

虽然此方法提供了复苏的功能,但有一些警告:

  • 有限的 JavaScript: 由于后期插值,内联 JavaScript 逻辑是不可能的。
  • 模板标签: 模板标签变成实施起来具有挑战性。

尽管有这些限制,但很明显,只要有一点独创性,模板文字就可以超越其传统限制并变得真正可重用。

以上是模板文字可以真正重用吗?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn