diff --git a/src/runtime/index.ts b/src/runtime/index.ts index 83c0a76..9530604 100644 --- a/src/runtime/index.ts +++ b/src/runtime/index.ts @@ -67,7 +67,7 @@ function select_route(url: URL): Target { if (url.search.length > 0) { url.search.slice(1).split('&').forEach(searchParam => { const [, key, value] = /([^=]+)=(.*)/.exec(searchParam); - query[key] = value || true; + query[key] = value ? decodeURIComponent(value.replace(/\+/g, ' ')) : true; }); } return { url, path, page, match, query }; diff --git a/test/app/routes/echo/page/[slug].html b/test/app/routes/echo/page/[slug].html index f393c6a..7b2f0a8 100644 --- a/test/app/routes/echo/page/[slug].html +++ b/test/app/routes/echo/page/[slug].html @@ -1,10 +1,11 @@ -