为什么ES6标记的模板字符串不提供原始字符串模板?

时间:2015-07-17 17:05:12

标签: string ecmascript-6 template-strings

在ES6中为模板字符串创建标记函数时,该函数应采用literals参数和values参数。

tagFunc `Hello ${someVar}`;

function tagFunc(literals, ...values){
   // do something
}

但是,它无法访问原始的,未经评估的解构模板。像这样举例如:

tagFunc `Hello ${someVar}`;

function tagFunc(literals, ...values, template){
   // template would be 'Hello ${someVar}'
}

或者可能是literals.originalTemplate属性来补充literals.raw

有具体原因吗?我能想到的最好的是,如果将变量名称传递给标记函数,可能会有一些安全隐含意义?

0 个答案:

没有答案