Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Melaksanakan Rendering Bersyarat dalam React JSX Tanpa Menggunakan Penyata if-else?

Bagaimanakah Saya Boleh Melaksanakan Rendering Bersyarat dalam React JSX Tanpa Menggunakan Penyata if-else?

Linda Hamilton
Lepaskan: 2024-11-28 17:56:12
asal
941 orang telah melayarinya

How Can I Implement Conditional Rendering in React JSX Without Using if-else Statements?

Rendering Bersyarat dengan JSX dalam React: Memahami Penyata if-else

Dalam aplikasi React, logik rendering selalunya bergantung pada keadaan komponen . Walaupun nampaknya intuitif untuk menggunakan penyataan if-else dalam JSX untuk memberikan elemen secara bersyarat berdasarkan perubahan keadaan, pendekatan ini tidak berfungsi seperti yang diharapkan.

Mengapa Penyata if-else Tidak Berfungsi dalam JSX

JSX hanyalah gula sintaktik untuk mencipta objek JavaScript. Ia mengubah ungkapan JSX kepada panggilan fungsi dan pembinaan objek semasa penyusunan. Walau bagaimanapun, pernyataan if-else bukan ungkapan tetapi pernyataan.

Operator Ternary to the Rescue

Untuk menjadikan elemen secara bersyarat, anda boleh menggunakan operator ternary, ditulis sebagai:

{condition ? trueStatement : falseStatement}
Salin selepas log masuk

Ia menyediakan cara ringkas untuk memilih secara dinamik antara elemen pemaparan berdasarkan syarat. Contohnya:

render() {
    return (   
        <View>
Salin selepas log masuk

Dalam senario ini, jika nilai this.state.sama dengan 'berita', elemen Teks akan dipaparkan; jika tidak, null akan dikembalikan, dengan berkesan menyembunyikan elemen daripada paparan.

Pendekatan Berasaskan Fungsi

Pendekatan lain ialah mencipta fungsi yang mengendalikan pemaparan bersyarat. Letakkan logik if-else di dalam fungsi dan panggilnya dari dalam JSX:

renderElement(){
   if(this.state.value == 'news')
      return data;
   return null;
}

render() {
    return (   
        <View>
Salin selepas log masuk

Kaedah ini menghapuskan keperluan untuk pernyataan if-else dalam JSX dan mengekalkan struktur kod yang lebih bersih.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Rendering Bersyarat dalam React JSX Tanpa Menggunakan Penyata if-else?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan