Bagaimana untuk Mencipta Literal Templat ES6 Boleh Digunakan Semula untuk Penilaian Dinamik?

DDD
Lepaskan: 2024-10-30 16:04:00
asal
323 orang telah melayarinya

How to Create Reusable ES6 Template Literals for Dynamic Evaluation?

Literal Templat ES6 Boleh Digunakan Semula

Cabaran:

Pembangun sering mendapati literal templat ES6 tidak ternilai untuk interpolasi rentetan. Walau bagaimanapun, kekecewaan biasa timbul apabila cuba menggunakan semula atau menilai literal ini semasa masa jalankan. Nampaknya penggantian mesti sentiasa dilakukan pada masa pengisytiharan, mengehadkan kepraktisannya sebagai templat.

Penyelesaian:

Untuk mengatasi had ini dan mencipta literal templat boleh guna semula yang boleh digunakan semula dan dinilai secara dinamik, kita mesti memperkenalkan peringkat perantara.

Menggunakan Pembina Fungsi:

Kunci kepada kebolehgunaan semula terletak pada penggunaan pembina Fungsi untuk membalut templat rentetan. Dengan berbuat demikian, pada asasnya kami menukar templat kepada fungsi JavaScript yang boleh digunakan kemudian dengan nilai pembolehubah tertentu.

<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)); // Output: "Hello world!"</code>
Salin selepas log masuk

Dalam contoh ini, fungsi fillTemplate mengambil kedua-dua rentetan templat dan objek berubah sebagai argumen . Ia membungkus templat dalam fungsi, kemudian mengembalikan hasil panggilan fungsi itu dengan nilai pembolehubah yang diberikan. Ini membolehkan kami menilai templat secara dinamik, memasukkan nilai pembolehubah yang berbeza setiap kali.

Pertimbangan Tambahan:

Walaupun kaedah ini menyediakan penyelesaian untuk isu kebolehgunaan semula, ia juga memperkenalkan pengehadan yang berpotensi.

  • Teg templat menjadi lebih mencabar untuk digabungkan.
  • Logik JavaScript sebaris tidak boleh disertakan kerana interpolasi lewat.

Pendekatan Alternatif:

Sesetengahnya mungkin lebih suka meneroka perpustakaan enjin templat alternatif yang menyediakan penyelesaian yang lebih komprehensif untuk templat yang boleh diguna semula dan dinilai masa jalan.

Atas ialah kandungan terperinci Bagaimana untuk Mencipta Literal Templat ES6 Boleh Digunakan Semula untuk Penilaian Dinamik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!