Вот модуль приложения
export const routes: Route[] = [
];
@NgModule({
declarations: [
AppComponent,
ErrorHandleComponent,
FilterComponent,
CreateComponent
],
imports: [
BrowserModule,
RouterModule.forRoot(routes),
// AppRoutingModule,
HttpClientModule
],
entryComponents: [
CreateComponent,
FilterComponent,
ErrorHandleComponent
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
Теперь убедитесь, что у вас есть пара значений ключа obj, которая возвращает компонент против ключа, например:
import { CreateComponent } from '../create/create.component';
import { FilterComponent } from '../filter/filter.component';
import { ErrorHandleComponent } from '../error-handle/error-handle.component';
export const components = {
'CreateComponent': CreateComponent,
'FilterComponent': FilterComponent,
'ErrorHandleComponent': ErrorHandleComponent,
};
Затем вставьте этот код в приложение.файл component.ts
constructor(private api: ApiService, private router: Router) {
}
getRoute() {
this.api.get_route().subscribe(res => {
res.forEach(element => {
// components key value pair obj
element.component = components[element.component];
routes.push(element);
});
this.rlist = routes;
this.router.resetConfig(routes);
});