ES6 テンプレート リテラルの再利用性の難問
この議論で提起された主な懸念は、ES6 テンプレート リテラルには再利用性がないと思われる点を中心に展開されています。従来のデモは宣言時の置換を強調し、実行時の変更を許可していません。
解決策: 関数コンストラクターの活用
この問題に対処するための実行可能な解決策は、関数コンストラクター。このアプローチには、テンプレート文字列を関数に変換することが含まれます。
次のスニペットを考えてみましょう:
<code class="js">const templateString = `Hello ${this.name}!`; const templateVars = { name: "world" }; const fillTemplate = function(templateString, templateVars){ return new Function("return `" + templateString + "`;").call(templateVars); }; console.log(fillTemplate(templateString, templateVars));</code>
この関数を呼び出すことで、変数を変更する柔軟性を備えながら、目的の文字列を生成できます。 runtime.
このアプローチの利点:
潜在的な欠点:
要約すると、ES6 テンプレート リテラルには本質的に真の再利用性が欠けており、 Function コンストラクターは、実行時にテンプレートを作成および変更するという望ましい動作をエミュレートする回避策を提供します。
以上がES6 テンプレート リテラルは本当に再利用可能ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。