From 1089d21d97d4ab94573ee1f6c9a95d076a19ee08 Mon Sep 17 00:00:00 2001 From: Alan Agius Date: Mon, 25 Nov 2024 10:09:19 +0000 Subject: [PATCH] fix(@angular/build): prevent errors with parameterized routes when `getPrerenderParams` is undefined Ensure that parameterized routes do not cause errors when the `getPrerenderParams` function is undefined, specifically in cases where the routing API is not utilized. Closes #28948 --- .../src/utils/server-rendering/routes-extractor-worker.ts | 2 +- .../e2e/tests/build/prerender/discover-routes-standalone.ts | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/angular/build/src/utils/server-rendering/routes-extractor-worker.ts b/packages/angular/build/src/utils/server-rendering/routes-extractor-worker.ts index ebdba2c18b3a..58a354855320 100644 --- a/packages/angular/build/src/utils/server-rendering/routes-extractor-worker.ts +++ b/packages/angular/build/src/utils/server-rendering/routes-extractor-worker.ts @@ -38,7 +38,7 @@ async function extractRoutes(): Promise { const { routeTree, appShellRoute, errors } = await extractRoutesAndCreateRouteTree( serverURL, undefined /** manifest */, - true /** invokeGetPrerenderParams */, + outputMode !== undefined /** invokeGetPrerenderParams */, outputMode === OutputMode.Server /** includePrerenderFallbackRoutes */, ); diff --git a/tests/legacy-cli/e2e/tests/build/prerender/discover-routes-standalone.ts b/tests/legacy-cli/e2e/tests/build/prerender/discover-routes-standalone.ts index 9f5d0de3259f..2fd7b2facd7f 100644 --- a/tests/legacy-cli/e2e/tests/build/prerender/discover-routes-standalone.ts +++ b/tests/legacy-cli/e2e/tests/build/prerender/discover-routes-standalone.ts @@ -59,6 +59,10 @@ export default async function () { path: 'lazy-two', loadComponent: () => import('./lazy-two/lazy-two.component').then(c => c.LazyTwoComponent), }, + { + path: ':param', + component: OneComponent, + }, ]; `, );