{"record":{"id":"f4d4f4697af7742c","repo":"quasarframework/quasar","slug":"failed-to-render-ssg-page-for-getssgpageidentifi","errorCode":null,"errorMessage":"Failed to render SSG page for ${getSsgPageIdentifier(ssgPage)}.${reason ? ` ${reason}.` : ''} Check details above.","messagePattern":"Failed to render SSG page for (.+?)\\.(.+?)\\.` : ''\\} Check details above\\.","errorType":"console","errorClass":null,"httpStatus":null,"severity":"warning","filePath":"app-vite/lib/modes/ssg/ssg-builder.js","lineNumber":71,"sourceCode":"      console.error(ssgPage)\n      error('Render error for the above SSG page:')\n      console.error(err)\n      error(\n        `Failed to render SSG page for ${getSsgPageIdentifier(ssgPage)}.` +\n          (reason ? ` ${reason}.` : '') +\n          ' Check details above.'\n      )\n    }\n  }\n\n  if (onSsgRendererError === 'warn') {\n    return ({ err, reason, ssgPage }) => {\n      console.log()\n      warn('SSG build failed to render SSG page:')\n      console.warn(ssgPage)\n      warn('Render error for the above SSG page:')\n      console.warn(err)\n      warn(\n        `Failed to render SSG page for ${getSsgPageIdentifier(ssgPage)}.` +\n          (reason ? ` ${reason}.` : '') +\n          ' Check details above.'\n      )\n    }\n  }\n\n  if (onSsgRendererError === 'ignore') {\n    return () => {}\n  }\n\n  fatal(\n    'Invalid value for quasar.config.ssg.onSsgRendererError:' +\n      `\"${onSsgRendererError}\". Must be one of: \"abort\", \"error\",` +\n      ' \"warn\", \"ignore\" or a function.',\n    'FAIL'\n  )\n}","sourceCodeStart":53,"sourceCodeEnd":89,"githubUrl":"https://github.com/quasarframework/quasar/blob/4841521b5f635a971eb9e2710e5542efd194691b/app-vite/lib/modes/ssg/ssg-builder.js#L53-L89","documentation":"The summary warning printed by the same 'warn'-mode SSG renderer error handler after the page and error details. It identifies the failed page via getSsgPageIdentifier(ssgPage), appends an optional reason, and tells the developer to look at the details printed above. The build continues; the failed page is simply not (fully) prerendered.","triggerScenarios":"Same as the renderer error itself: getSsgRendererErrorHandler (onSsgRendererError === 'warn') invoked with a failed { err, reason, ssgPage }; this message is the closing line of the warn() call at ssg-builder.js:71.","commonSituations":"Prerendering routes that throw during SSR — client-only APIs, failing data fetches without error handling, or misconfigured base/publicPath causing asset resolution errors during render.","solutions":["Scroll up in the build log to the 'Render error for the above SSG page' output; fix the root error there.","Use the page identifier to locate the failing route, then reproduce with `quasar dev` and inspect server-side behavior.","Guard SSR-unsafe code paths or fix the failing data fetch.","Exclude the problematic route from SSG generation if prerendering is unnecessary."],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":"try {\n  await buildSsg()\n} catch (err) {\n  // locate the failed page identifier from the log above this summary\n  console.error('SSG build completed with unrendered pages:', err)\n}","preventionTips":["Read the detailed error printed above this summary line before changing config.","Run builds with onSsgRendererError:'fail' in CI to fail fast with full stacks.","Fix SSR-unsafe code per failing page identifier.","Exclude non-prerenderable routes from generation."],"tags":["ssg","ssr-render-error","build","prerender"],"backgroundTag":"ssg-page-render-failed","analyzedSha":"4841521b5f635a971eb9e2710e5542efd194691b","analyzedAt":"2026-08-30T01:13:14.944Z","schemaVersion":2},"datasetVersion":"2026-08-30T03:17:51.788Z"}