Я использую Angular2 для моего интерфейса, и теперь мне нужно зарегистрировать новые маршруты из массива.Angular2 - зарегистрируйтесь новые Маршруты из массива
У меня есть служба, которая получает данные с сервера. В моем AppComponent эти данные хранятся в переменной.
Это функция вызова моей службы:
getSpaces() {
this.spaceService.getData()
.then(data => {
this.spaces = data;
for (var i = 0; i < this.spaces.length; i++) {
var item = { label: this.spaces[i].name, icon: 'fa-list', routerLink: ['/database' + this.spaces[i].name] }
this.itempanel[1].items[1].items.push(item);
}
});
}
Что я теперь толкая свойства имен из «пространства» в мой panelmenu (primeng). Как вы можете видеть, я добавляю routerLink для каждого space.name, но теперь эти маршруты не входят в мой декоратор @Routes.
Итак, мой вопрос: как я могу зарегистрировать свои маршруты динамически? Они должны выглядеть н так:
new Route {path: 'database'+this.spaces[i].name, component: SpaceComponent}
Я не смог найти что-нибудь полезное в документации, но я мог бы что-то пропустил. Любые идеи?
Я знаю, что я могу зарегистрировать Маршруты с парами:
@Routes([
{path:'database/:spacename', component: SpaceComponent}
])
Но я не знаю, как работать с этим, потому что я не то, что глубоко в Angular2 (или даже программирование самого по себе) , Можете ли вы, ребята, объяснить мне, как работать с маршрутом Params (например, как получить пробел в этой ссылке или что-то еще) или рассказать мне, как регистрировать новые маршруты из одной функции? Спасибо!