तो भेद लगता है होना करने के लिए देखें: defer
अच्छा है जब आप कुछ है कि बनाता है/पहले से ही एक नमूदार देता है, लेकिन आप तो होना ही है कि इस प्रक्रिया के लिए यह नहीं करना चाहते सदस्यता तक।
create
अच्छा है जब आपको मैन्युअल रूप से एसिंक प्रक्रिया को लपेटने और एक अवलोकन करने की आवश्यकता होती है। सृजन तक यह सृजन स्थगित है।
defer
एक ऑपरेटर कि नमूदार दृश्यों के आस्थगित रचना के लिए सक्षम बनाता है:
दूसरे शब्दों में कहें करने के लिए।
create
अवलोकन योग्य अनुक्रम का एक कस्टम कार्यान्वयन है (जहां सदस्यता सदस्यता तक स्थगित कर दी गई है)।
तो तुम एक स्थिति आप just
उपयोग कर सकते हैं जहां कुछ परिणाम/मूल्य से एक Observable
बनाने के लिए या आप एक नेटवर्क एपीआई परत उस अनुरोध का एक Observable
देता है, लेकिन आप उस अनुरोध को शुरू करने के लिए नहीं करना चाहते हैं सदस्यता तक। defer
उन परिदृश्यों के लिए अच्छा होगा।
आप एक नेटवर्क एपीआई परत है कि नहीं वापसी के लिए एक अनुरोध के लिए एक Observable
करता है, लेकिन जो आप के लिए एक Observable
इंटरफेस की जरूरत है, तो आप create
का उपयोग हो सकता है। उस Observable
अनुक्रम अभी भी सदस्यता तक बनाए नहीं जाएगा। यदि आप चाहते थे कि नेटवर्क कॉल सब्सक्रिप्शन के बावजूद बंद हो जाए, तो आप एक अलग तंत्र का उपयोग करेंगे, जैसे कि Subject
, संभावित रूप से प्रतिलिपि।
स्रोत
2017-01-24 16:10:11