From 4359032621afe5b39093363cda0a17649461e11e Mon Sep 17 00:00:00 2001 From: Daniel Roe Date: Thu, 20 Oct 2022 21:53:25 +0100 Subject: [PATCH 1/2] fix(nuxt): don't load payloads for external urls --- packages/nuxt/src/app/plugins/payload.client.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/nuxt/src/app/plugins/payload.client.ts b/packages/nuxt/src/app/plugins/payload.client.ts index c13acdb001b..f3cb703560f 100644 --- a/packages/nuxt/src/app/plugins/payload.client.ts +++ b/packages/nuxt/src/app/plugins/payload.client.ts @@ -1,3 +1,4 @@ +import { parseURL } from 'ufo' import { defineNuxtPlugin, loadPayload, isPrerendered, useRouter } from '#app' export default defineNuxtPlugin((nuxtApp) => { @@ -8,7 +9,12 @@ export default defineNuxtPlugin((nuxtApp) => { } // Load payload into cache - nuxtApp.hooks.hook('link:prefetch', to => loadPayload(to)) + nuxtApp.hooks.hook('link:prefetch', (url) => { + const { protocol } = parseURL(url) + if (!protocol) { + return loadPayload(url) + } + }) // Load payload after middleware & once final route is resolved useRouter().beforeResolve(async (to, from) => { From 4c2f563467a1da9af48d3c791dc3eda8acb03246 Mon Sep 17 00:00:00 2001 From: pooya parsa Date: Fri, 21 Oct 2022 10:15:22 +0200 Subject: [PATCH 2/2] avoid object destructure --- packages/nuxt/src/app/plugins/payload.client.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/nuxt/src/app/plugins/payload.client.ts b/packages/nuxt/src/app/plugins/payload.client.ts index f3cb703560f..65b1fce1c23 100644 --- a/packages/nuxt/src/app/plugins/payload.client.ts +++ b/packages/nuxt/src/app/plugins/payload.client.ts @@ -10,8 +10,7 @@ export default defineNuxtPlugin((nuxtApp) => { // Load payload into cache nuxtApp.hooks.hook('link:prefetch', (url) => { - const { protocol } = parseURL(url) - if (!protocol) { + if (!parseURL(url).protocol) { return loadPayload(url) } })