Menurut pengalaman saya, sebagian besar siswa mengetahui konsep ini. Jika Anda tidak tahu banyak, maka Anda harus tahu bahwa browser akan memicu peristiwa onload saat halaman web dimuat, dan kami biasanya menggunakan metode $(document).load() di window.onload atau jquery untuk menentukan apa yang harus dilakukan halaman web saat dimuat.
Dalam APP, acara semacam ini lebih kaya. Sering kali, Anda harus melakukan sesuatu untuk pengguna sebelum mereka melihat halaman, yang paling umum adalah menarik data dari server; Atau lakukan sesuatu saat mereka akan meninggalkan halaman.
1. Pahami kait siklus hidup ionik Pada Ionic 3.8.0, kerangka kerja menyediakan 8 fungsi kait yang dipicu pada berbagai tahap siklus hidup halaman.
1.1 ionViewDidLoad Pemicu penyelesaian pemuatan halaman, di sini "muat selesai" mengacu pada status halaman di mana sumber daya yang diperlukan telah dimuat, tetapi belum memasuki status halaman (pengguna masih melihat halaman sebelumnya).
Perlu dicatat bahwa itu adalah kait yang sangat arogan, yang hanya akan dipanggil sekali dalam seluruh proses, yaitu, dipanggil ketika Anda memasuki halaman untuk pertama kalinya, dan setelah itu, tidak peduli bagaimana Anda masuk dan keluar, itu akan sepi dan menyedihkan. Kecuali Anda mematikan latar belakangnya dan masuk kembali ke perangkat lunak (tidak apa-apa juga untuk menekan refresh saat men-debug halaman web).
Oleh karena itu, hook ini cocok bagi Anda untuk melakukan beberapa pemrosesan satu kali, seperti menarik data pengguna dari server dan menyimpannya di cache.
1.2 ionViewWillEnter Pemahaman harfiah adalah saat "Saya masuk", ketika halaman baru mulai beralih. Anda dapat memproses data halaman terlebih dahulu pada saat ini, dan pengait ini akan dipanggil setiap saat.
1.3 ionViewDidEnter Ketika hook ini dipicu, pengguna telah memasuki halaman baru (halaman aktif), dan akan dipanggil setiap saat.
Berbicara tentang ini, saya harus menyela, penamaan kait ionic benar-benar ramah bagi sebagian besar siswa Cina, dan satu akan dan satu MEMANG memecahkan masalah. Tidak seperti beberapa kerangka kerja glamor (salah) di luar, ada banyak kerangka kerja siap, perbarui, patuh, destory, dll., ingat sekali dan lupakan sekali. (Tentu saja, ini lelucon, penamaan komponen terkait erat dengan mekanisme operasi kerangka kerja)
1.4 ionViewWillLeave Page Ready (akan datang) dipicu ketika pengguna baru saja memicu tombol kembali atau peristiwa terkait.
1.5 ionViewDidLeave Dipicu saat halaman selesai, halaman tidak aktif.
1.6 ionViewWillUnload Memicu ketika sumber daya di halaman akan dihancurkan, apakah Anda akan menebak bahwa hook ini, seperti ionViewDidLoad, hanya akan dipicu sekali?
1.7 Pengujian Mari kita ambil halaman yang kita buat di bagian sebelumnya dan lakukan tes pada pemuatan pengait. Di bagian sebelumnya, kami mengimplementasikan proses melompat dari HomePage ke TestPage menggunakan tombol, dan sekarang kami menambahkan enam kait di atas ke TestPage dan mengamati pemanggilan mereka melalui konsol.
Kode bagian tema halaman adalah sebagai berikut
Perhatikan bahwa saya juga menambahkan pernyataan pengujian ke konstruktor. Buka Sajikan penelusuran kesalahan, klik tombol, buka TestPage, dan amati apa yang dihasilkan konsol.
Pertama kali di halaman
Kembali ke halaman beranda dan amati apa yang dihasilkan konsol.
Meninggalkan halaman untuk pertama kalinya
Masuk dan keluar dari TestPage lagi dan amati apa yang dikeluarkan konsol.
Masuk dan keluar kedua
Kesimpulan berikut dapat ditarik:
- Konstruktor diaktifkan sebelum ionViewDidLoad
- ionViewDidLoad hanya diaktifkan saat Anda pertama kali memasuki halaman
- ionViewWillUnload dipicu setelah setiap kali Anda meninggalkan halaman
2. Ada juga dua kait pelindung
Saya menyebutkan di awal bahwa ionic menawarkan 8 kait, sedangkan saya hanya memperkenalkan 6. 6 kait pertama memiliki kesamaan, dan nilai pengembalian semuanya kosong, yaitu, mereka dipanggil pada saat yang sesuai dan tidak mengembalikan informasi apa pun.
Dua kait lainnya sedikit berbeda, yaitu ionViewCanEnter dan ionViewCanLeave, yang dapat mengembalikan boolean. Lihat, saya baru saja berbicara tentang tenses, dan sekarang saya akan berbicara tentang kata kerja modal. Jika 6 kait pertama adalah respons pasif dari halaman terhadap kunjungan pengguna, maka sekarang, halaman tersebut memiliki kesadaran untuk memungkinkan Anda datang atau mengizinkan Anda pergi, ah, halaman telah berdiri mulai sekarang!
Kedua kait ini lebih berperan dalam kontrol otoritas, dan baru-baru ini ada istilah yang sangat trendi yang disebut Penjaga, bagaimana memahami penjaga ini, Anda dapat memahaminya sebagai penjaga gerbang komunitas, kepala sekolah yang ramah, dan bustard tua 2333 dengan ribuan postur di bangunan bunga aprikot kuno.
Sekarang kita sudah tahu bahwa itu mengembalikan nilai boolean, mari kita coba. Karena tidak ada logika bisnis dalam program kita, mari kita gunakan API waktu untuk menilai di sini
Akses ke halaman diblokir
Demikian pula, jika Anda ingin meninggalkan di halaman, jika ionViewCanLeave mengembalikan false, Anda akan diblokir.
Operasi pengembalian dicegat
Informasi cetak konsol
3 Ringkasan
Ahem, tidak ada lagi omong kosong, singkatnya, Ionic memiliki kait siklus hidup berikut
- ionViewDidLoad disebut pertama kali untuk mengembalikan void
- ionViewWillEnter mengembalikan void setiap kali dipanggil
- ionViewDidEnter mengembalikan void setiap kali dipanggil
- ionViewWillLeave mengembalikan batal setiap kali dipanggil
- ionViewDidLeave mengembalikan batal setiap kali dipanggil
- ionViewWillUnload mengembalikan void setiap kali dipanggil
- ionViewCanEnter mengembalikan boolean setiap kali dipanggil
- ionViewCanLeave mengembalikan boolean setiap kali dipanggil
|