fix(router): avoid two slash values between the baseHref and the path
This commit is contained in:
parent
e372cc779d
commit
cdc7b03e67
@ -62,5 +62,8 @@ function stripIndexHtml(url: string): string {
|
|||||||
if (url.length > 10 && StringWrapper.substring(url, url.length - 11) == '/index.html') {
|
if (url.length > 10 && StringWrapper.substring(url, url.length - 11) == '/index.html') {
|
||||||
return StringWrapper.substring(url, 0, url.length - 11);
|
return StringWrapper.substring(url, 0, url.length - 11);
|
||||||
}
|
}
|
||||||
|
if (url.length > 1 && url[url.length - 1] == '/') {
|
||||||
|
url = StringWrapper.substring(url, 0, url.length - 1);
|
||||||
|
}
|
||||||
return url;
|
return url;
|
||||||
}
|
}
|
||||||
|
@ -38,6 +38,14 @@ export function main() {
|
|||||||
it('should not prepend urls with starting slash when an empty URL is provided',
|
it('should not prepend urls with starting slash when an empty URL is provided',
|
||||||
() => { expect(location.normalizeAbsolutely('')).toEqual(browserLocation.baseHref); });
|
() => { expect(location.normalizeAbsolutely('')).toEqual(browserLocation.baseHref); });
|
||||||
|
|
||||||
|
it('should not prepend path with an extra slash when a baseHref has a trailing slash', () => {
|
||||||
|
browserLocation = new DummyBrowserLocation();
|
||||||
|
browserLocation.spy('pushState');
|
||||||
|
browserLocation.baseHref = '/my/slashed/app/';
|
||||||
|
location = new Location(browserLocation);
|
||||||
|
expect(location.normalizeAbsolutely('/page')).toEqual('/my/slashed/app/page');
|
||||||
|
});
|
||||||
|
|
||||||
it('should not append urls with leading slash on navigate', () => {
|
it('should not append urls with leading slash on navigate', () => {
|
||||||
location.go('/my/app/user/btford');
|
location.go('/my/app/user/btford');
|
||||||
expect(browserLocation.spy('pushState'))
|
expect(browserLocation.spy('pushState'))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user