तो मान लें कि आपके पास एक इंटरफ़ेस है जिसमें टूलबार, साइडबार और ग्रिड है। टूलबार में एक ड्रॉप-डाउन होता है जब कोई उपयोगकर्ता बदलता है, साइडबार और ग्रिड में सामग्री बदल जाती है। कोणीय 1 में वापस, मैं अपने सभी गतिशील डेटा रखने के लिए एक सेवा का उपयोग करता हूं। जब सेवा में कुछ बदलाव होता है, तो उस सेवा का उपयोग करने वाले सभी घटक भी अपडेट होंगे।कोणीय 2 - घटकों के बीच डेटा/परिवर्तन कैसे साझा करें
अच्छी तरह से कोणीय 2 में, ऐसा लगता है कि लोग विभिन्न तरीकों का उपयोग कर रहे हैं। मैं आपका इनपुट प्राप्त करना चाहता था जिस पर पसंदीदा तरीका है।
- स्टेटिक सेवा
- OnChanges
- इनपुट और आउटपुट
अपडेट किया गया - 03/09/16
सबसे अच्छा समाधान की तरह लग रहा थ्रेड है थियरी टेम्पलर पोस्ट किया गया: Delegation: EventEmitter or Observable in Angular2
मेरे पास शेष प्रश्न यह है कि यदि घटक के बीच साझा की जाने वाली प्रत्येक डेटा आइटम के लिए नई सेवा बनाने का सर्वोत्तम अभ्यास है या क्या हमारे पास केवल एक ऐसी सेवा है जिसमें सभी साझा डेटा संग्रहीत हो।
See Plnkr for code
Original Plunker - केवल एक सेवा है जो वस्तु में सभी डेटा संग्रहीत करता है - हर परिवर्तन से उसकी अपनी सेवा
Revised Plunker for example होगा। प्रत्येक श्रोता को यह जांचने के लिए एक प्रकार दिया जाएगा कि उसे उस प्रकार के आधार पर कुछ भी करने की आवश्यकता है या नहीं।
दूसरों अच्छा जवाब प्रदान की लेकिन ध्यान देने योग्य का एक वर्ग है कि वहाँ चाहते थे [घटक इंटरैक्शन] पर दस्तावेज़ [https://angular.io/docs/ts/latest/cookbook/component-communication.html) कि माँ y भी पढ़ने के लायक हो। – jandersen