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!