Angular: Dalam dokumen Lifecycle Hooks, tidak jelas bahwa ngOnChanges tidak dipanggil saat input tidak digunakan

Dibuat pada 27 Mar 2018  ·  1Komentar  ·  Sumber: angular/angular

saya sedang mengajukan...

[x] Documentation issue or request

Perilaku saat ini

Halaman Lifecycle Hooks mengatakan ini tentang ngOnChanges() :

dipanggil sebelum ngOnInit() dan setiap kali satu atau lebih properti input terikat data berubah

dan ini tentang ngOnInit() :

disebut [...] setelah ngOnChanges()

Tidak jelas dari deskripsi itu bahwa ngOnChanges() akan _tidak_ dipanggil jika komponen digunakan _tanpa_ memberikan input apa pun.

Perilaku yang diharapkan

Dokumentasi harus lebih jelas tentang perilaku ngOnChanges() : khususnya, jika komponen memiliki input yang dideklarasikan tetapi tidak digunakan, maka ngOnChanges() akan _tidak_ dipanggil sebelum ngOnInit()

Reproduksi minimal masalah dengan instruksi

https://stackblitz.com/edit/angular-ngonchanges

Apa motivasi / kasus penggunaan untuk mengubah perilaku?

Dilihat dari dokumen, seseorang mungkin memiliki kesan bahwa ngOnChanges() akan selalu dipanggil terlebih dahulu sebelum ngOnInit() untuk komponen dengan input, meskipun input tersebut tidak digunakan oleh template/komponen induk.

Ini dapat menyebabkan kesalahan tidak disengaja yang tidak terlalu jelas, seperti menghapus ngOnInit() jika menduplikasi logika start-up komponen dari ngOnChanges() .

docs feature medium

Komentar yang paling membantu

Ini baru saja membuat saya keluar juga.

Dokumentasi benar-benar muncul seperti ngOnChanges adalah persyaratan pengaktifan ngOnInit, itu juga tidak menjelaskan bahwa ngOnChanges mungkin tidak menyala sama sekali jika tidak ada data yang terikat. Padahal kenyataannya, itu hanya menggambarkan urutan mereka dipanggil, bukan terkait satu sama lain yang dipicu atau tidak.

Akan sangat bagus jika ini dibersihkan.

>Semua komentar

Ini baru saja membuat saya keluar juga.

Dokumentasi benar-benar muncul seperti ngOnChanges adalah persyaratan pengaktifan ngOnInit, itu juga tidak menjelaskan bahwa ngOnChanges mungkin tidak menyala sama sekali jika tidak ada data yang terikat. Padahal kenyataannya, itu hanya menggambarkan urutan mereka dipanggil, bukan terkait satu sama lain yang dipicu atau tidak.

Akan sangat bagus jika ini dibersihkan.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat