/ / आउटलेट के बिना किसी अन्य घटक से लिंक करें - कोणीय, कोणीय-मार्ग, राउटर-आउटलेट

आउटलेट के बिना किसी अन्य घटक से लिंक करें - कोणीय, कोणीय-रूटिंग, राउटर-आउटलेट

मेरे Angular5 ऐप में मैंने राउटर-आउटलेट का नाम दिया है"व्यवस्थापक" (/ व्यवस्थापक), जिसके पास चाइल्ड राउटर है "समाचार" / admin / (admin: news), और मैं घटक CreatePostComponent / admin / (admin: news / new-post) का लिंक बनाना चाहता हूं।

मेरा राउटर यहाँ है:

  {
path: "admin",
component: AdminComponent,
children: [
{
path: "",
redirectTo: "/admin/(admin:news)",
pathMatch: "full"
},
{
path: "news",
component: NewsComponent,
outlet: "admin",
children: [
{
path: "new-post",
component: CreatePostComponent
}
]
}
]
}

और टेम्पलेट में लिंक: <a [routerLink]="["new-post"]">New post</a>

यह काम है, मेरा url बदलकर / admin / (admin: news / new-post), लेकिन मैं अभी भी CreatePostComponent के बजाय NewsComponent को देखता हूं। मुझे यह कैसे सही ढंग से करना चाहिए?

इसके अलावा, क्या मेरे पास राउटर-आउटलेट (/ व्यवस्थापक / समाचार, नहीं / व्यवस्थापक / (व्यवस्थापक: समाचार)) नाम के सामान्य प्रकार के यूआरएल हो सकते हैं;

उत्तर:

उत्तर № 1 के लिए 1

यदि आपके NewsComponent में राउटर-आउटलेट नहीं है, तो आपके राउटर को इस तरह दिखना चाहिए:

{
path: "admin",
component: AdminComponent,
children: [
{
path: "",
redirectTo: "/admin/(admin:news)",
pathMatch: "full"
},
{
path: "news",
component: NewsComponent,
outlet: "admin",
},
{
path: "news/new-post",
component: CreatePostComponent,
outlet: "admin",
}
]
}

इस तरह से आप आउटलेट का पुन: उपयोग करते हैं और एक बच्चे के मार्ग का मजाक उड़ाते हैं

यदि आपके पास राउटर आउटलेट है तो आप केवल एक घटक प्रदर्शित करने जा रहे हैं

आपके लिंक को कॉल करने का मार्ग कैसा दिखना चाहिए

[routerLink]="[{outlets:{admin:["news","new-post"]}}]"

या

[routerLink]="[{outlets:{admin:["news/new-post"]}}]"