fix(router): fix matrix params check to handle 'special' objects

This commit is contained in:
vsavkin
2016-08-07 18:34:12 -07:00
committed by Alex Rickabaugh
parent 0bd97ecda2
commit d2d36c61f3
2 changed files with 12 additions and 1 deletions

View File

@ -35,11 +35,16 @@ export function createUrlTree(
}
function validateCommands(n: NormalizedNavigationCommands): void {
if (n.isAbsolute && n.commands.length > 0 && (typeof n.commands[0] === 'object')) {
if (n.isAbsolute && n.commands.length > 0 && isMatrixParams(n.commands[0])) {
throw new Error('Root segment cannot have matrix parameters');
}
}
function isMatrixParams(command: any): boolean {
return typeof command === 'object' && command.outlets === undefined &&
command.segmentPath === undefined;
}
function tree(
oldSegmentGroup: UrlSegmentGroup, newSegmentGroup: UrlSegmentGroup, urlTree: UrlTree,
queryParams: Params, fragment: string): UrlTree {