Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Menyesuaikan Kandungan Templat Secara Dinamik Berdasarkan Ketersediaan Objek dalam Go?

Bagaimana untuk Menyesuaikan Kandungan Templat Secara Dinamik Berdasarkan Ketersediaan Objek dalam Go?

Susan Sarandon
Susan Sarandonasal
2024-11-08 11:53:01754semak imbas

How to Dynamically Customize Template Content Based on Object Availability in Go?

Menyesuaikan Kandungan Templat Berdasarkan Ketersediaan Objek

Dalam templat anda, anda menyasarkan untuk memaparkan teg meta lalai melainkan sifat tertentu ditetapkan, dalam yang mana teks yang berbeza harus ditunjukkan. Semasa menggunakan struct tanpa nama untuk menetapkan nilai harta untuk 90% pengendali adalah boleh dilaksanakan, ia memperkenalkan kerumitan yang tidak perlu.

Untuk mencapai kefungsian yang anda inginkan, anda boleh menggunakan fungsi bukan dan kosong terbina dalam dalam templat Go. Begini caranya:

{{if not .}}
   <!-- Output for nil or empty values, including false, 0, and any array, slice, map, or string of length zero -->
{{else if eq .MetaValue "some-x"}}
   <!-- Output for "some-x" property value -->
{{else}} 
   <!-- Output for non-empty values other than "some-x" -->
{{end}}

Kod ini terlebih dahulu akan menyemak sama ada .MetaValue adalah sifar atau kosong. Jika ya, bahagian pertama akan dilaksanakan. Jika MetaValue tidak kosong atau kosong, bahagian kedua akan menyemak sama ada ia sama dengan "some-x." Jika ia berlaku, bahagian kedua akan dilaksanakan. Jika tidak, bahagian ketiga akan dilaksanakan.

Menggunakan pendekatan ini, anda boleh mengelak daripada menambahkan kod boilerplate pada pengendali yang pada masa ini melepasi sifar dan masih mengawal kandungan yang dipaparkan dalam templat anda secara dinamik berdasarkan kehadiran atau nilai harta.

Atas ialah kandungan terperinci Bagaimana untuk Menyesuaikan Kandungan Templat Secara Dinamik Berdasarkan Ketersediaan Objek dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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