Rumah  >  Artikel  >  hujung hadapan web  >  Adakah Rx Observables Dingin secara Lalai? Memahami Aliran Data dengan `terbitkan` dan `kongsi`

Adakah Rx Observables Dingin secara Lalai? Memahami Aliran Data dengan `terbitkan` dan `kongsi`

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-29 22:40:29158semak imbas

 Are Rx Observables Cold by Default?  Understanding the Flow of Data with  `publish` and `share`

Cerhatian Panas dan Sejuk: Memahami Aliran Data

Adakah Semua Rx Observables Dingin secara Lalai?

Secara lalai , semua Rx boleh diperhatikan adalah sejuk, kecuali subjek. Ini bermakna mereka hanya mengeluarkan nilai apabila mereka mempunyai sekurang-kurangnya seorang pemerhati melanggannya.

Rx Operators to Turn Cold Observables into Hot Observables

Terdapat dua operator utama yang boleh menukar boleh cerap sejuk kepada boleh cerap panas:

  • terbitkan: Mengembalikan boleh cerap boleh sambung, yang hanya akan mula memancarkan nilai apabila ia disambungkan.
  • kongsi: Sama seperti menerbitkan, tetapi ia menghubungkan secara automatik yang boleh diperhatikan apabila pemerhati pertama melanggan.

dengan Pengendali Terkini dan Pemerhatian Sejuk

denganLatestFrom tidak mengubah kesejukan atau kepanasan sesuatu yang boleh diperhatikan. Dalam contoh anda:

  • cold$.withLatestFrom(sth$,...) akan tetap menjadi cold observable.
  • Jika berbilang cerap dilanggan kepada cold$ menggunakan withLatestFrom, mereka setiap satu akan menggunakan jujukan nilai yang sama, tanpa mengira masa langganan mereka.

Rx.fromEvent dan Gelagat Panas/Sejuk

Percanggahan yang anda perhatikan dalam Contoh CodePen adalah disebabkan oleh fakta bahawa peristiwa itu mengeluarkan hanya apabila elemen diklik, bukan apabila Rx.fromEvent observable dilanggan. Disebabkan ini, setiap langganan kepada yang boleh diperhatikan menerima peristiwa yang berbeza.

Rajah Aliran Dipermudah untuk Boleh Cerap Sejuk

Untuk menggambarkan aliran data yang dipermudahkan untuk pemerhatian sejuk:

Source -> Observer1 -> Observer2

Operator Berbilang Siaran (terbitkan/kongsi)

Pengendali berbilang penyiaran mencipta subjek secara dalaman dan mengembalikan pemerhatian yang boleh disambungkan. Apabila yang boleh diperhatikan disambungkan, subjek melanggan data boleh diperhatikan huluan dan berbilang siaran kepada semua pemerhati yang dilanggan.

Source -> Subject -> Observer1 -> Observer2
Pertimbangkan Aliran Data Semasa Menggunakan Operator

Memahami aliran data dan tingkah laku pengendali adalah penting. Walaupun sesuatu yang boleh diperhatikan adalah panas, adalah penting untuk mempertimbangkan cara pengendali seterusnya boleh menjejaskan tingkah laku panas atau sejuknya.

Atas ialah kandungan terperinci Adakah Rx Observables Dingin secara Lalai? Memahami Aliran Data dengan `terbitkan` dan `kongsi`. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn