fix(RouteRegistry): initialize RouteParams.params

Fix a bug caused by RouteRegistry.generate not initializing RouteParams.params to a StringMap

Closes #3755
This commit is contained in:
Isaac Park 2015-08-25 11:59:57 -04:00 committed by Brian Ford
parent ecf6ba3974
commit 3791c4a682
2 changed files with 8 additions and 1 deletions

View File

@ -211,7 +211,7 @@ export class RouteRegistry {
} else if (segment == '' || segment == '.' || segment == '..') {
throw new BaseException(`"${segment}/" is only allowed at the beginning of a link DSL.`);
}
let params = null;
let params = {};
if (i + 1 < linkParams.length) {
let nextSegment = linkParams[i + 1];
if (isStringMap(nextSegment)) {

View File

@ -79,6 +79,13 @@ export function main() {
expect(url).toEqual('first/one/second/two');
});
it('should geneate params as an empty StringMap when no params are given', () => {
registry.config(RootHostCmp,
new Route({path: '/test/...', component: DummyParentParamCmp, as: 'test'}));
var instruction = registry.generate(['test'], RootHostCmp);
expect(instruction.component.params).toEqual({});
});
it('should generate URLs of loaded components after they are loaded',
inject([AsyncTestCompleter], (async) => {
registry.config(