현재 활성 경로를 변경하지 않고 URL에서 경로 매개 변수를 업데이트하는 방법을 찾으려고합니다. 누군가가 :pageId
가 변경 될 때활성 경로를 변경하지 않고 URL 경로 매개 변수를 각도 2로 변경하십시오.
{
path: 'pages/:pageId',
component: PageComponent,
children: [
{
path: 'sections/:sectionId',
component: PageSectionComponent,
children: [
{
path: 'details',
component: PageSectionDetailsComponent
}]
}]
}
, 나는 URL을 변경하는 동안 자신의 활성 경로를 유지하려면 예를 들어, 나는 다음과 같은 경로를 말한다.
이pages/999/sections/123/details => pages/777/sections/123/details
pages/999/sections/123 => pages/777/sections/123
이 또한 내가 :sectionId
이 작업을 할 필요가 :에서가 999 777에서 :pageId
을 변경하는 경우 그래서, 자신의 경로 변경해야합니다. 예를 들어, :sectionId
(123) 456에서 이동 :
pages/999/sections/123/details => pages/999/sections/456/details
pages/999/sections/123 => pages/999/sections/456
내가, 그래서 절대 링크를 유지하기가 매우 어려울 것이다 생략 내 프로젝트에 여러 자식 루트가 있습니다. 어떻게 든 현재 ActivatedRoute
을 사용할 수 있기를 바랄뿐입니다. 업데이트중인 단일 매개 변수를 변경 한 다음 Router
을 사용하여 해당 경로를 탐색하십시오.
도움을 주시면 대단히 감사하겠습니다.
추가 정보 :
내가 사용 각도 4.0.0
이 내가 해결하기 위해 노력하고있어 문제의 핵심에 도착 비슷한 질문이지만,이 최신이있다 : Change a single route parameter on the current route in Angular 2가
나는 이것이 내 모든 자식 경로에서 작동하지 않을 것이라고 생각합니다. 예를 들어,'this.router.navigate ([ '/ pages', pageId, '/ sections', sectionId])'를 실행하면'/ pages/999/sections/123/details'는'/ pages/pages/777/sections/123/details' 대신/777/sections/123'을 사용하십시오. 내가 가지고있는 문제는 내 위치 변경을 하드 코딩하지 않고 * 전체 * 활성 경로를 유지하는 방법입니다. – SnailCoil
경로는 어떻게 활성화 되나요? 어딘가에서 코드를 게시하거나 플 런커를 제공 할 수 있습니까? – DeborahK
필수 매개 변수 대신 쿼리 매개 변수를 사용할 수도 있습니다. 즉, 경로 구성에서 ID를 제거하고 두 개의 ID가있는 개체 인 쿼리 매개 변수 집합으로 전달하는 것입니다. – DeborahK