X Tutup
Skip to content

Commit 23784a2

Browse files
committed
fix(router): properly serialize aux routes
Previously, routes would be generated with a leading slash after the parens: example.com/foo(/bar) This fix removes the trailing slash when generating the URL, so now we have: example.com/foo(bar) This change is not breaking because we still recognize both forms. We just normalize without the slash.
1 parent d8775e0 commit 23784a2

File tree

1 file changed

+11
-3
lines changed

1 file changed

+11
-3
lines changed

modules/angular2/src/router/instruction.ts

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ export function stringifyInstruction(instruction: Instruction): string {
137137

138138
export function stringifyInstructionPath(instruction: Instruction): string {
139139
return instruction.component.urlPath + stringifyAux(instruction) +
140-
stringifyPrimary(instruction.child);
140+
stringifyPrimaryPrefixed(instruction.child);
141141
}
142142

143143
export function stringifyInstructionQuery(instruction: Instruction): string {
@@ -146,15 +146,23 @@ export function stringifyInstructionQuery(instruction: Instruction): string {
146146
'';
147147
}
148148

149+
function stringifyPrimaryPrefixed(instruction: Instruction): string {
150+
var primary = stringifyPrimary(instruction);
151+
if (primary.length > 0) {
152+
primary = '/' + primary;
153+
}
154+
return primary;
155+
}
156+
149157
function stringifyPrimary(instruction: Instruction): string {
150158
if (isBlank(instruction)) {
151159
return '';
152160
}
153161
var params = instruction.component.urlParams.length > 0 ?
154162
(';' + instruction.component.urlParams.join(';')) :
155163
'';
156-
return '/' + instruction.component.urlPath + params + stringifyAux(instruction) +
157-
stringifyPrimary(instruction.child);
164+
return instruction.component.urlPath + params + stringifyAux(instruction) +
165+
stringifyPrimaryPrefixed(instruction.child);
158166
}
159167

160168
function stringifyAux(instruction: Instruction): string {

0 commit comments

Comments
 (0)
X Tutup