fix(router): ensuring MatchedUrl pass query params
This commit is contained in:
		
							parent
							
								
									3ac2821a1b
								
							
						
					
					
						commit
						7d853dd9ad
					
				| @ -111,10 +111,10 @@ export class ParamRoutePath implements RoutePath { | ||||
|     for (var i = 0; i < this._segments.length; i += 1) { | ||||
|       var pathSegment = this._segments[i]; | ||||
| 
 | ||||
|       currentUrlSegment = nextUrlSegment; | ||||
|       if (pathSegment instanceof ContinuationPathSegment) { | ||||
|         break; | ||||
|       } | ||||
|       currentUrlSegment = nextUrlSegment; | ||||
| 
 | ||||
|       if (isPresent(currentUrlSegment)) { | ||||
|         // the star segment consumes all of the remaining URL, including matrix params
 | ||||
|  | ||||
| @ -296,6 +296,22 @@ export function main() { | ||||
|              }); | ||||
|        })); | ||||
| 
 | ||||
|     it('should match query params on the root component even when the next URL segment is null', | ||||
|        inject([AsyncTestCompleter], (async) => { | ||||
|          registry.config(RootHostCmp, | ||||
|                          new Route({path: '/first/...', component: SingleSlashChildCmp})); | ||||
| 
 | ||||
|          registry.recognize('/first?comments=all', []) | ||||
|              .then((instruction) => { | ||||
|                expect(instruction.component.componentType).toBe(SingleSlashChildCmp); | ||||
|                expect(instruction.component.params).toEqual({'comments': 'all'}); | ||||
| 
 | ||||
|                expect(instruction.child.component.componentType).toBe(DummyCmpB); | ||||
|                expect(instruction.child.component.params).toEqual({}); | ||||
|                async.done(); | ||||
|              }); | ||||
|        })); | ||||
| 
 | ||||
|     it('should generate URLs with matrix and query params', () => { | ||||
|       registry.config( | ||||
|           RootHostCmp, | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user