Latihan 1 dari materi Conditional Rendering Solid di SolidJS — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.
Kode awal punya signal loggedIn bernilai awal false dan tombol yang membalik nilainya, setLoggedIn(v => !v), bertulisan Login atau Logout. Biarkan tombol itu. Tambahkan pilihan tampilannya:
Tambahkan Show ke baris import: import { createSignal, Show } from "solid-js".
Di dalam <div>, di atas tombol, tulis <Show when={loggedIn()} fallback={<p>Silakan login</p>}> berisi <p>Selamat datang!</p>, lalu tutup dengan </Show>.
Yang dicek:
Kodemu memakai Show, dan when-nya berisi nilai signal yang dipanggil dengan kurung: when={loggedIn()}. Tanpa kurung, Solid menganggap fungsinya selalu benar.
Sebelum diklik, <p> berisi persis Silakan login.
Sesudah tombol diklik sekali, <p> berisi persis Selamat datang!.
Dari awal lagi, sesudah tombol diklik dua kali, <p> kembali berisi persis Silakan login.
Hint
Solid punya komponen bawaan untuk memilih satu dari dua tampilan berdasarkan kondisi, dengan tampilan pengganti saat kondisinya salah.
Import Show. Bungkus <p>Selamat datang!</p> dengan <Show>, isi when dengan loggedIn() dan fallback dengan <p>Silakan login</p>. Biarkan tombolnya tetap membalik nilainya.