Pembaca seperti Anda membantu mendukung MUO. Saat Anda melakukan pembelian menggunakan tautan di situs kami, kami dapat memperoleh komisi afiliasi. Baca selengkapnya Biasanya, saat membangun aplikasi web, halaman login digunakan untuk melindungi halaman pribadi. Misalnya, untuk platform blog, dasbor hanya dapat diakses oleh pengguna yang diautentikasi. Jika pengguna yang tidak diautentikasi mencoba mengakses halaman tersebut, aplikasi akan mengarahkan mereka ke halaman login. Setelah mereka masuk, mereka mendapatkan akses Show
Pada artikel ini, kita akan melihat bagaimana Anda dapat mengalihkan pengguna dari halaman yang dibatasi ke halaman login. Kami juga akan membahas bagaimana Anda dapat mengembalikan pengguna ke halaman mereka setelah masuk Di React Router v6, ada dua cara yang dapat Anda gunakan untuk mengarahkan ulang pengguna — komponen Navigate dan hook useNavigate() Buat Aplikasi BereaksiBuat aplikasi React sederhana menggunakan perintah create-react-app. Anda akan menggunakan aplikasi ini untuk menguji cara kerja komponen Navigate dan hook useNavigate() Buat Halaman MasukAnda harus membuat halaman Login untuk mengautentikasi pengguna. Karena ini bukan tutorial autentikasi, gunakan array objek sebagai basis data pengguna Buat file baru di folder src dan beri nama Login. js. Kemudian tambahkan kode berikut, untuk membuat form login _Ini adalah formulir login sederhana. Saat pengguna mengirimkan nama pengguna dan kata sandinya, mereka diperiksa terhadap array. Jika detail ini benar, status autentikasi disetel ke true. Karena Anda akan memeriksa apakah pengguna diautentikasi di komponen Dasbor, Anda juga perlu menyimpan status autentikasi di suatu tempat yang dapat diakses oleh komponen lain. Artikel ini menggunakan penyimpanan lokal. Dalam aplikasi nyata, menggunakan konteks React akan menjadi pilihan yang lebih baik Buat Halaman DasborTambahkan kode berikut dalam file baru bernama Dashboard. js Dasbor seharusnya hanya dapat diakses oleh pengguna yang diautentikasi saja. Oleh karena itu, saat pengguna mengunjungi halaman dasbor, periksa terlebih dahulu apakah sudah diautentikasi. Jika tidak, arahkan mereka ke halaman login Untuk melakukannya, atur rute aplikasi terlebih dahulu menggunakan router React Dalam indeks. js, atur perutean untuk aplikasi Anda _Lindungi Halaman DasborSekarang rute aplikasi Anda sudah diatur, langkah selanjutnya adalah menjadikan rute dasbor pribadi. Saat komponen Dasbor dimuat, status autentikasi diambil dari penyimpanan lokal dan disimpan dalam status. Jika pengguna tidak diautentikasi, aplikasi akan dialihkan ke halaman login jika tidak maka akan menampilkan halaman dashboard Arahkan Pengguna ke Halaman Login Menggunakan NavigasiKomponen Navigate menggantikan komponen Redirect yang digunakan di React Router v5. Impor Navigasi dari react-router-dom _Untuk mengarahkan ulang pengguna yang tidak diautentikasi, gunakan sebagai berikut Komponen Navigate adalah API deklaratif. Itu bergantung pada peristiwa pengguna, yang dalam hal ini adalah otentikasi menyebabkan perubahan negara dan akibatnya menyebabkan komponen merender ulang. Perhatikan bahwa Anda tidak harus menggunakan kata kunci ganti. Menggunakannya menggantikan URL saat ini alih-alih mendorongnya ke riwayat browser Arahkan Pengguna ke Halaman Lain Menggunakan useNavigate()Opsi lain untuk melakukan redirect di React adalah useNavigate() hook. Pengait ini menyediakan akses ke API imperatif navigasi. Mulailah dengan mengimpornya dari react-router-dom _Arahkan ulang setelah pengguna berhasil diautentikasi dalam fungsi handleSubmit() seperti ini _Dalam contoh ini, setelah pengguna mengirimkan formulir dengan detail yang benar, mereka dialihkan ke dasbor Saat membuat aplikasi, salah satu tujuannya adalah memberikan pengalaman terbaik kepada pengguna. Anda dapat melakukan ini dengan membawa pengguna kembali ke halaman sebelumnya dengan mengarahkan mereka ke halaman login. Anda dapat melakukan ini dengan meneruskan -1 untuk menavigasi seperti ini, navigasikan(-1). Kerjanya dengan cara yang sama seperti menekan tombol kembali pada browser Anda Routing di BereaksiDalam artikel ini, Anda mempelajari cara mengarahkan pengguna ke halaman lain di React menggunakan komponen Navigate dan hook useNavigate(). Artikel tersebut menggunakan formulir Login untuk mendemonstrasikan bagaimana Anda dapat mengalihkan pengguna yang tidak diautentikasi dari halaman yang dilindungi ke halaman login Bagaimana cara mengarahkan halaman setelah login berhasil?Cara paling umum untuk mengimplementasikan logika redirection setelah login adalah. . menggunakan tajuk HTTP Referer menyimpan permintaan asli di sesi menambahkan URL asli ke URL login yang dialihkan Bagaimana cara mengarahkan ulang ke halaman lain setelah berhasil masuk dalam HTML?Pendekatan. Untuk mengalihkan dari halaman HTML ke halaman lain, Anda dapat menggunakan tag . Ini adalah pengalihan sisi klien, browser meminta server untuk menyediakan halaman lain.
Bagaimana cara mengarahkan ulang ke halaman lain dari js?Kita dapat mengalihkan pengguna ke halaman web lain menggunakan properti dari objek ini. jendela. . lokasi. href- mengembalikan URL (href) dari halaman saat ini lokasi. replace()- menggantikan dokumen saat ini dengan dokumen baru lokasi. assign() memuat dokumen baru Bagaimana cara mengarahkan ulang ke halaman lain dalam JavaScript setelah pesan peringatan?Jika kita ingin mendapatkan url halaman web saat ini, kita bisa mendapatkannya menggunakan lokasi. href seperti yang telah kita lakukan dalam metode peringatan. Jika kita ingin mengalihkan pengguna dari halaman saat ini ke halaman lain, kita dapat mengatur lokasi .
Bagaimana cara mengalihkan ke halaman lain saat tombol login diklik?Anda dapat menggunakan tag formulir dalam HTML untuk pengalihan . Atribut tindakan dan metode dapat digunakan untuk mengalihkan ke halaman lain. Tag jangkar juga dapat digunakan untuk mengarahkan ulang. Anda dapat menentukan URL di atribut href dari tag jangkar di HTML. |