The current route you wrote is reports/reports/:d_name
you should write your route that way in your child router
path: '', component: ReportsComponent,
children: [
{ path : ':d_name' ,component: ReportdetailComponent },
edit :
{path: '', component: ReportsComponent,
children: [{ path : ':d_name' ,component: ReportdetailComponent }] }]
when you add a children property to a current path, it means that it is the role of the parent component to handle the routing using a <router-outlet></router-outlet>
In this case the ReportsComponent
need a router-outlet. It is usefull if you want a top component for each children and only modify a part of the page using the children.
{ path: '', component: ReportsComponent},
{ path : ':d_name' ,component: ReportdetailComponent }
If you want only the main router of your app, you should avoid using children property.
It depends on your needs, if you provide more details, I could better understand the context.