В бета-версии от компонента ребенка (скажем 'child1'
) вы могли бы сказать своим родителям, чтобы загрузить (перейти к) другой компонент ребенка вместо тока что-то вроде этого:Угловой 2 новый (RC1) маршрутизатор. Вложенные маршруты
_router.parent.navigate(['child2']);
('_router' is injected in constructor)
В RC1 там нет 'parent', так что вам кажется, что вам нужно использовать _router.navigate()
и предоставить полный URL-адрес, начиная с корня приложения. Что-то вроде
/root/grandparent/parent/child2
Теперь вопрос в том случае, если ребенок компонент знает только о маршрутах родителей, но не о прародителей - как вы это делаете? Было бы неплохо использовать _router.navigate(['../child2'])
, но это дает мне странные ошибки, как "invalid number of '../'.
Единственный способ получить URL родителей я нашел до сих пор является то, что:
_router.routeTree._root.children[0].value.stringifiedUrlSegments
(вы также можете получить там от OnActivate события)
, но это выглядит неправильно. Это также может различаться в зависимости от количества родителей/бабушек и дедушек - я еще не пробовал.
Итак, есть ли лучший способ сделать это, или относительный путь должен работать, и я делаю что-то неправильно?
спасибо.
вау люди превосходны, вы сохраните мой день: p спасибо +1 –