Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 12922|Jawab: 0

[ionik] Peristiwa siklus hidup halaman ionic3 (kait)

[Salin tautan]
Diposting pada 21/06/2018 10.30.06 | | | |
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






Mantan:Praktik Aplikasi Android Ionic Development (3): Daftar Video Berita
Depan:Penyedia ionic3
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com