DEV Community

Discussion on: A crash course on serverless-side rendering with Vue.js, Nuxt.js and AWS Lambda

Collapse
 
svedova profile image
Savas Vedova • Edited

I believe it's safer if you wait till the renderer is ready. To do so, simply listen to the render:done hook. For instance something like should work:

app.use((req, res) => {
  nuxt.hook("render:done", () => {
    nuxt.render(req, res);
  });
});

setTimeout doesn't seem very reliable to me :) On my mac I had to wait around 60ms for instance.

Thread Thread
 
aphilippartd profile image
Alexis Philippart de Foy

The following works as well.

app.use(async (req, res) => {
  await nuxt.ready()
  nuxt.render(req, res)
})

With the nuxt.hook("render:done" () => {}) I was getting random 404 errors when deployed. nuxt.ready() did the trick for me!

Thread Thread
 
adnanrahic profile image
Adnan Rahić

Awesome of you to share this! Feel free to add a PR to the GitHub repo with this edit. 👌