2015-10-23 13 views
6

से बनाए गए कोणीय 2 घटक में डेटा को इंजेक्ट कैसे करें मैं वर्तमान में हमारे कोणीय 1 ऐप (सुंदर जटिल एक) के एंगुलर 2 प्रोटोटाइप (अल्फा 44 पर आधारित) बनाने की कोशिश कर रहा हूं और मैं सबसे अच्छा मॉडल/डेटा ढूंढने की कोशिश कर रहा हूं मार्ग और बाल मार्गों का उपयोग करते समय वास्तुकला।राउटर

मेरे उदाहरण में, एक मार्ग से बनाए गए एक बच्चे घटक से, मैं मूल घटक की संपत्ति तक पहुंचना चाहता हूं (router-outlet होस्ट करना)।

लेकिन जब आप router-outlet से कोई घटक बनाते हैं, तो आप @Input और @Output का उपयोग नहीं कर सकते हैं। तो मूल routeParams और स्थिर routeData को छोड़कर, कुछ डेटा/गुणों को इंजेक्ट करने का सबसे अच्छा अभ्यास क्या है?

आप बिना किसी युग्मन के पैरेंट घटक के साथ कैसे संवाद करते हैं?

+2

देखो (https://github.com/angular/angular/issues/4452)। AFAIK अब 'राउटर-आउटलेट' से घटक के साथ संवाद करने का एकमात्र तरीका DI का उपयोग कर है। – alexpods

उत्तर

2

आप मार्गों में डेटा पास करने के लिए RouteData का उपयोग कर सकते हैं। here और here देखें। मैं अभी भी घटक से इस डेटा ओबीजे को शुरू करने का हिस्सा खो रहा हूं (my question देखें)

2

राउटर द्वारा जोड़े गए घटकों के साथ एक साझा सेवा का उपयोग किया जा सकता है। विवरण के लिए https://angular.io/docs/ts/latest/cookbook/component-communication.html

data समर्थन आरसी 4 में नए राउटर में भी जोड़ा गया था। विवरण के लिए How do I pass data in Angular 2 components while using Routing?

Angular 2 - equivalent to router resolve data for new router भी संबंधित हो सकता है।

0

आप राउटर आउटलेट के अंदर बच्चे घटक से डेटा को इंजेक्शन, अवलोकन योग्य के साथ मूल घटक से पास (इंजेक्ट) कर सकते हैं। आप इस समाधान को video में पा सकते हैं।

GitHub पर कोड देखें: [इस मुद्दे] पर https://github.com/tabvn/angular-blog