Tersurat Templat Boleh Digunakan Semula: Mendedahkan Potensi Tersembunyi
Walaupun literal templat dalam ES6 digunakan secara meluas, persepsi kekal bahawa mereka terikat selama-lamanya saat penciptaan mereka, tidak mempunyai fleksibiliti untuk digunakan semula dan dikemas kini secara dinamik. Artikel ini mencabar tanggapan itu, meneroka kemungkinan mengubah literal templat kepada dokumen yang boleh diguna semula dan dinamik.
Intipati templat tradisional terletak pada keupayaan untuk menyuntik token pada masa jalan, boleh dinilai apabila perlu. Walau bagaimanapun, literal templat ES6 nampaknya menilai penggantiannya pada masa pengisytiharan, mengehadkan kepraktisannya.
Pemangkin Penting: Pembina Fungsi
Untuk mengatasi had yang jelas ini, kami menggunakan pembina Fungsi sebagai perantara. Dengan menggunakan binaan ini, kita boleh menangguhkan proses interpolasi sehingga fungsi digunakan:
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));
Dalam contoh ini, fungsi fillTemplate menerima rentetan templat dan satu set pembolehubah untuk diinterpolasi. Dalam fungsi, kami membina fungsi yang, apabila dilaksanakan, mengembalikan rentetan templat dengan nilai daripada templateVars yang disuntik pada masa jalan.
Faedah Literal Templat Boleh Digunakan Semula
The terhasil literal templat boleh guna semula menawarkan banyak kelebihan:
Walaupun penyelesaian ini memperkenalkan batasan tertentu, seperti ketidakupayaan untuk logik JavaScript sebaris, penyelesaian boleh dibangunkan.
Kesimpulan
Dengan menggunakan pembina Fungsi, kami membuka kunci potensi sebenar literal templat ES6. Kami mengubahnya daripada rentetan statik kepada templat dinamik yang boleh digunakan semula, membuka kemungkinan baharu untuk organisasi kod dan fleksibiliti. Walaupun perjalanan untuk mencipta semula sepenuhnya kefungsian enjin templat tradisional diteruskan, teknik ini menyediakan asas yang kukuh untuk memperluaskan keupayaan literal templat.
Atas ialah kandungan terperinci Bolehkah Huruf Templat Boleh Digunakan Semula dan Dinamik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!