के साथ @ इनपुट्स का उपयोग करके मेरे पृष्ठ में एक उप-नेविगेशन है जो एक सामान्य मुख्य दृश्य के नीचे कुछ सबव्यूव प्रदर्शित करता है। मैं <router-outlet>
के माध्यम से उप-दृश्यों में ऑब्जेक्ट पास करना चाहता हूं ताकि मैं मुख्य घटक में एक बार डेटा पुनर्प्राप्त कर सकूं और इसे अपने उप घटकों के साथ साझा कर सकूं।कोणीय 2 @ राउटर-आउटलेट>
नोट: यदि मैं में <one></one>
निर्देश को शामिल करता हूं तो main.html यह काम करता है लेकिन यह मेरा वांछित व्यवहार नहीं है।
मुख्य दृश्य:
<h1>Details</h1>
<a [router-link]="['./sub1']">One</a> |
<a [router-link]="['./sub2']">Two</a> |
<a [router-link]="['./sub3']">Three</a>
<hr/>
<router-outlet [data]="maindata"></router-outlet>
उप देखें 1:
<h2>{{ data.name }}</h2>
...
मुख्य दृश्य:
@Component({
selector: 'main-detail',
directives: [ROUTER_DIRECTIVES],
templateUrl: './main.html'
})
@RouteConfig([
{ path: '/', redirectTo: '/one' },
{ path: '/one', as: 'One', component: OneComponent },
{ path: '/two', as: 'Two', component: TwoComponent },
{ path: '/three', as: 'Three', component: ThreeComponent }
])
export class MainComponent {
maindata: Object = {name:'jim'};
}
उप देखें 1:
@Component({
selector: 'one',
directives: [CORE_DIRECTIVES],
inputs: ['data'],
templateUrl: './one.html'
})
export class OneComponent {
@Input() data;
}
चेक इस [मुद्दा] (https://github.com/angula आर/कोणीय/मुद्दों/4452) –