From e615c2e97238c8c59647867b6b96bb2d2528e111 Mon Sep 17 00:00:00 2001 From: Francesco Novy Date: Mon, 20 Mar 2023 09:43:29 +0100 Subject: [PATCH] fix(vue): Do not depend on `window.location` for SSR environments When rendering in an SSR environment, `window.location` may not be defined. In this case, we should not error but just not start a transaction. --- packages/vue/src/router.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/vue/src/router.ts b/packages/vue/src/router.ts index 617cc516e421..d8f87f14ad5d 100644 --- a/packages/vue/src/router.ts +++ b/packages/vue/src/router.ts @@ -65,7 +65,8 @@ export function vueRouterInstrumentation( // We have to start the pageload transaction as early as possible (before the router's `beforeEach` hook // is called) to not miss child spans of the pageload. - if (startTransactionOnPageLoad) { + // We check that window & window.location exists in order to not run this code in SSR environments. + if (startTransactionOnPageLoad && WINDOW && WINDOW.location) { startTransaction({ name: WINDOW.location.pathname, op: 'pageload',