Skip to content

TypeError: Cannot read properties of undefined (reading 'get') in server-entry.js during generation #375

@renyuneyun

Description

@renyuneyun

While building static site, I encounter this error:

 App •  DONE  • SSR Client compiled with success • 8726ms

 App •  WAIT  • Compiling of SSR Server with Vite in progress...

(!) Experimental legacy.buildSsrCjsExternalHeuristics and ssr.format: 'cjs' are going to be removed in Vite 5.
    Find more information and give feedback at https://github.com/vitejs/vite/discussions/13816.

 App •  DONE  • SSR Server compiled with success • 1474ms

(node:149477) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
/home/ryey/coding/solid-fixer/node_modules/.cache/quasar-app-extension-ssg/server/server-entry.js:1
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("vue"),v=require("quasar"),_=require("vue/server-renderer"),R=require("solid-helper-vue"),q=require("process"),y=require("quasar/wrappers"),S=require("pinia"),m=require("vue-router");function g(t){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const e in t)if(e!=="default"){const o=Object.getOwnPropertyDescriptor(t,e);Object.defineProperty(r,e,o.get?o:{enumerable:!0,get:()=>t[e]})}}return r.default=t,Object.freeze(r)}const A=g(q);const d=t=>{const r=s.getCurrentInstance();if(!r||r.type.__isLazilyHydrated)return;const e=s.useSSRContext();if(!e||e._lazilyHydratedComponents&&e._lazilyHydratedComponents.has(t))return;let{parent:o}=r;for(;o;){if(o.type.__isLazilyHydrated){(e._lazilyHydratedComponents||(e._lazilyHydratedComponents=new Set)).add(t);return}o=o.parent}},l=s.defineComponent({__name:"App",__ssrInlineRender:!0,setup(t){return d("src/App.vue"),window.process=A,(r,e,o,a)=>{const u=s.resolveComponent("router-view");e(_.ssrRenderComponent(s.unref(R.SessionProvider),a,{default:s.withCtx((i,n,w,h)=>{if(n)n(_.ssrRenderComponent(u,null,null,w,h));else return[s.createVNode(u)]}),_:1},o))}}}),f=l.setup;l.setup=(t,r)=>{const e=s.useSSRContext();return(e.modules||(e.modules=new Set)).add("src/App.vue"),f?f(t,r):void 0};const p=y.store(()=>S.createPinia()),C=[{path:"/",component:()=>Promise.resolve().then(()=>require("./assets/MainLayout-92809b36.js")),children:[{path:"",component:()=>Promise.resolve().then(()=>require("./assets/IndexPage-9db3dec6.js"))},{path:"callback",component:()=>Promise.resolve().then(()=>require("./assets/LoginCallback-61b0dfed.js"))}]},{path:"/:catchAll(.*)*",component:()=>Promise.resolve().then(()=>require("./assets/ErrorNotFound-f2f0c029.js"))}],c=y.route(function(){const t=m.createMemoryHistory;return m.createRouter({scrollBehavior:()=>({left:0,top:0}),routes:C,history:t("/")})}),I=s.defineComponent({name:"AppWrapper",setup(t){return d(".quasar/app.js"),s.onMounted(()=>{const{proxy:{$q:r}}=s.getCurrentInstance();r.onSSRHydrated!==void 0&&r.onSSRHydrated()}),()=>s.h(l,t)}}),b=typeof window<"u"&&document.body.getAttribute("data-server-rendered")===null,P=async()=>(typeof c=="function"?await c():c).getRoutes();async function H(t,r,e){const o=t(I);o.use(v.Quasar,r,e);const a=typeof p=="function"?await p({ssrContext:e}):p;o.use(a),typeof window<"u"&&b!==!0&&window.__INITIAL_STATE__!==void 0&&(a.state.value=window.__INITIAL_STATE__,delete window.__INITIAL_STATE__);const u=s.markRaw(typeof c=="function"?await c({ssrContext:e,store:a}):c);return a.use(({store:i})=>{i.router=u}),{app:o,store:a,router:u}}const T={config:{}},{components:j,directives:E,...O}=T;async function z(t){const{app:r,router:e,store:o}=await H(s.createSSRApp,O,t);r.use(e);const{url:a}=t.req,u=e.resolve(a);if(u.fullPath!==a)throw{url:u.fullPath};if(u.matched.some(({path:n})=>/^\/:\w*\(\.\*\)\*?$/.test(n))){const n=new Error;throw n.code=404,n}if(await e.push(a),await e.isReady(),e.currentRoute.value.matched.filter(n=>n.components!==void 0).flatMap(n=>Object.values(n.components)).length===0){const n=new Error;throw n.code=404,n}return t.state=s.unref(o.state),r}exports.__quasar_ssg_vue3_lazy_hydration=d;exports.getRoutesFromRouter=P;exports.renderApp=z;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           ^

TypeError: Cannot read properties of undefined (reading 'get')
    at g (/home/ryey/coding/solid-fixer/node_modules/.cache/quasar-app-extension-ssg/server/server-entry.js:1:476)
    at Module.<anonymous> (/home/ryey/coding/solid-fixer/node_modules/.cache/quasar-app-extension-ssg/server/server-entry.js:1:557)
    at Module._compile (node:internal/modules/cjs/loader:1376:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1435:10)
    at Module.load (node:internal/modules/cjs/loader:1207:32)
    at Module._load (node:internal/modules/cjs/loader:1023:12)
    at Module.require (node:internal/modules/cjs/loader:1235:19)
    at require (node:internal/modules/helpers:176:18)
    at createRenderFn (/home/ryey/coding/solid-fixer/node_modules/quasar-app-extension-ssg/src/vite/ssg-create-render-fn.js:27:7)
    at SsgBuilder.generatePages (/home/ryey/coding/solid-fixer/node_modules/quasar-app-extension-ssg/src/vite/ssg-builder.js:83:64)

Node.js v21.2.0

I have set minify: false, in quasar.config.js, but as you can see, the error message is not very helpful on its own. Guess this code is from quasar-app-extension-ssg, which has been minified already.

The command I used and my environment is:

❯ npm run build:ssg

> [email protected] build:ssg
> quasar ssg generate

 App • Looking for Quasar App Extension "ssg" command "generate"
 App • Running "ssg" Quasar App Extension...
 App • Running "ssg" > "generate" command

 Build mode............. ssg
 Pkg quasar............. v2.14.1
 Pkg @quasar/app-vite... v1.7.0
 Pkg vite............... v4.5.0
 Pkg ssg................ v5.1.1
 Debugging.............. no

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions