React: [Dokumen] [Pertanyaan] Referensi - Panggilan Balik vs String

Dibuat pada 11 Mar 2016  ·  3Komentar  ·  Sumber: facebook/react

Saya membaca dokumen lagi, tidak jelas bagi saya perbedaan antara mendefinisikan referensi sebagai panggilan balik vs string:

<input ref={input => this._input = input} /> vs <input ref="input" />

Bisakah seseorang mengklarifikasi kepada saya?

Komentar yang paling membantu

Jika Anda mendefinisikan ref sebagai string, itu akan tersedia pada objek this.refs , misalnya, this.refs.input .
Jika Anda mendefinisikan referensi panggilan balik, Anda bebas melakukan apa saja dengannya, termasuk menyimpannya di this jika Anda mau.

Referensi string pada akhirnya akan ditinggalkan. Referensi panggilan balik diperkenalkan kemudian tetapi mereka mencakup semua kasus penggunaan referensi string dan tidak memiliki beberapa kelemahan. Saya menyarankan Anda untuk selalu menggunakan referensi panggilan balik dalam kode baru yang Anda tulis.

Di masa mendatang, pertimbangkan untuk mengajukan pertanyaan di StackOverflow. Kami tidak secara resmi menganggap pelacak masalah sebagai forum dukungan, dan sayangnya pencarian GitHub tidak berfungsi sebaik pencarian StackOverflow, jadi kemungkinan seseorang akan menanyakan hal ini lagi. Sedangkan jika Anda memposting ini di StackOverflow, kemungkinan Anda akan mendapatkan jawaban yang bagus, pertanyaan Anda akan dipilih, dan lebih banyak orang akan belajar darinya dan menemukannya di masa depan.

Semua 3 komentar

Jika Anda mendefinisikan ref sebagai string, itu akan tersedia pada objek this.refs , misalnya, this.refs.input .
Jika Anda mendefinisikan referensi panggilan balik, Anda bebas melakukan apa saja dengannya, termasuk menyimpannya di this jika Anda mau.

Referensi string pada akhirnya akan ditinggalkan. Referensi panggilan balik diperkenalkan kemudian tetapi mereka mencakup semua kasus penggunaan referensi string dan tidak memiliki beberapa kelemahan. Saya menyarankan Anda untuk selalu menggunakan referensi panggilan balik dalam kode baru yang Anda tulis.

Di masa mendatang, pertimbangkan untuk mengajukan pertanyaan di StackOverflow. Kami tidak secara resmi menganggap pelacak masalah sebagai forum dukungan, dan sayangnya pencarian GitHub tidak berfungsi sebaik pencarian StackOverflow, jadi kemungkinan seseorang akan menanyakan hal ini lagi. Sedangkan jika Anda memposting ini di StackOverflow, kemungkinan Anda akan mendapatkan jawaban yang bagus, pertanyaan Anda akan dipilih, dan lebih banyak orang akan belajar darinya dan menemukannya di masa depan.

Terima kasih sekali lagi @gaearon. Saya akan menggunakan StackOverflow lain kali.

Tidak masalah! Silakan kirimkan permintaan tarik ke dokumentasi jika Anda merasa kami dapat membuatnya lebih jelas bahwa kami merekomendasikan pola ref panggilan balik dalam kode baru.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat