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
です。
これには特定の理由がありますか?私が考えることができる最善のことは、変数名がタグ関数に渡された場合、セキュリティ上の影響があるかもしれないということですか?