मैं नए कोणीय राउटर के साथ खेल रहा हूं और एक ऐसे मामले का प्रयास करना चाहता हूं जहां मेरे पास एक घटक है और नेस्टेड घटक है।कोणीय नया राउटर - नेस्टेड घटक और रूटिंग
angular.module('app', ['ngNewRouter'])
.controller('AppController', function ($router) {
$router.config([
{
path: '/parent',
component: 'parent'
}
]);
})
.controller('ParentController', function ($router) {
this.name = 'Parent component';
$router.config([
{
path: '/child',
component: 'child'
}
]);
})
.controller('ChildController', function() {
this.name = 'Child component';
})
.config(function ($componentLoaderProvider) {
$componentLoaderProvider.setTemplateMapping(function (compName) {
return compName + '.html';
});
});
और एचटीएमएल हिस्सा:
नीचे वहाँ जावा स्क्रिप्ट कोड मैं दो घटकों को परिभाषित करने के लिए लिखा था और मार्गों है http://plnkr.co/edit/yWCFgXQI491EYvIldjyR
:<!-- index.html -->
<body ng-controller="AppController as app">
<a ng-link="parent">Go to parent</a>
<div ng-viewport></div>
</body>
<!-- parent.html -->
{{ parent.name }}<br/>
<a ng-link="child">Show child</a>
<div ng-viewport></div>
<!-- child.html -->
{{ child.name }}
यहाँ एक Plunker ऊपर कोड युक्त है
इस कोड के आधार पर मेरे पास निम्नलिखित प्रश्न/मुद्दे हैं:
- यदि मैं निम्नतम स्तर (#/अभिभावक/बच्चे) पर जाता हूं और फिर रीफ्रेश मारा जाता है, तो माता-पिता और बच्चे के घटक अब और नहीं दिखाए जाते हैं। मार्ग अभी भी बहाल नहीं किया गया है, भले ही यूआरएल अभी भी वही है। क्या मुझे का पुनर्निर्माण करने की आवश्यकता है या पृष्ठ के राज्य को पुनर्स्थापित करने के लिए कुछ करें? यूआरएल बुकमार्क करने में सक्षम होने के लिए यह एक बहुत ही बुनियादी सुविधा है।
- अगर मैं निम्नतम स्तर (#/माता पिता/बच्चे) के लिए जाना और फिर माता-पिता लिंक करने पर जाएँ पर क्लिक करें, URL सही ढंग #/माता-पिता के लिए निर्धारित है, लेकिन बच्चे घटक अभी भी दिख रहा है।
यह समस्या संबंधित हो सकती है: https://github.com/angular/router/issues/222 – wemu
https://github.com/angular/router/issues/117 के साथ-साथ – wemu
में कुछ और चर्चा चल रही है मैंने गिटहब पर भी एक मुद्दा खोला: https://github.com/angular/router/issues/334 – Alain