我正在使用新的角度路由器,并想尝试一个用例,其中有一个组件和一个嵌套组件。
下面是我编写的JavaScript代码,用于定义两个组件和路径:
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';
});
});
HTML部分:
<!-- 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:http://plnkr.co/edit/yWCFgXQI491EYvIldjyR
根据此代码,我有以下问题:
答案 0 :(得分:0)
首先让我感到震惊的是,你没有使用任何指向你想要展示的父母和孩子的标识符。
您如何/在何处获得此信息?你的网址看起来会更好(甚至可能解决问题,如果它被写成
/parent/:parentId/
或
/parent/:parentId/child/:childId.
我自己主要使用routeProvider和routeParameters,他们提供这个功能没有任何麻烦但是因为这似乎是纯粹学术性的,我会尝试阅读模块实际上在做什么以及检查github问题中是否存在相关问题。
此外,this page from the documentation似乎对此问题有所了解。
如果这对您没有任何帮助,您会考虑通过向我们提供更多信息来帮助我们吗?
祝你好运!答案 1 :(得分:0)
{{1}}&#13;
答案 2 :(得分:0)
**Using new way we can do perform routing this .**
(function () {
'use strict';
angular
.module('app', ['parent', 'home', 'ngNewRouter'])
.controller('AppController', function ($router) {
this.header = 'TITLE';
$router.config([
{
path: '/', component: 'home'
},
{
path: '/parent', component: 'parent'
}
]);
});
})();
**I hope this will work .**
答案 3 :(得分:0)