Bab 5 dari 8 · 20 menit
Navigasi Antar Layar dengan Expo Router
Expo Router menghadirkan paradigma navigasi berbasis sistem berkas (file-based routing) yang terinspirasi dari arsitektur framework web modern ke dunia mobile. Kamu tidak perlu lagi mendaftarkan nama rute satu demi satu secara manual di berkas konfigurasi terpusat. Setiap berkas kode layar yang kamu letakkan di dalam direktori app/ otomatis dipetakan menjadi alamat rute navigasi aplikasi.
Aturan struktur berkas pada Expo Router terdiri atas:
app/index.tsx: Menjadi layar utama saat aplikasi pertama kali dibuka (rute'/').app/_layout.tsx: Menentukan cetak biru tata letak pembungkus navigasi (misalnya Stack atau Tabs) yang berlaku bagi semua rute di tingkatan folder tersebut.- Folder berpenamaan tanda kurung seperti
app/(tabs)/: Digunakan untuk mengelompokkan modul rute secara logis tanpa memengaruhi penamaan URL segmen jalur aplikasi. - Berkas berpenamaan tanda kurung siku seperti
app/produk/[id].tsx: Berfungsi sebagai rute dinamis yang menangkap parameter segmen jalur navigasi.
Perpindahan antar layar dapat dilakukan secara deklaratif menggunakan komponen <Link href="/produk/10"> atau secara imperatif melalui hook useRouter():
Untuk membaca nilai parameter dinamis pada layar target [id].tsx, gunakan hook useLocalSearchParams(). Expo Router juga mendukung tiga pola navigasi seluler utama: Stack (tumpukan kartu riwayat dengan tombol kembali otomatis), Tabs (bilah tab navigasi di bagian bawah layar), dan Drawer (menu laci geser dari sisi kiri antarmuka).
Cek pemahaman
1. Berkas rute manakah yang akan dieksekusi saat pengguna mengakses jalur halaman muka utama '/' di Expo Router?
2. Hook useRouter digunakan untuk melakukan perpindahan layar secara imperatif di dalam fungsi penanganan event seperti onPress.

