最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - How can I get window.location.href in Nuxtjs V3 - Stack Overflow

programmeradmin2浏览0评论

I'm trying to let players join a game via QR Code. Since that game will be hosted on several IP's, i want to dynamically generate the URL.

This is my current workaround in my NuxtJS Vue Component:

<template>
  <input placeholder="copy browser window url into this field" v-model="fullPath" @change="generateQR">
</template>

<script setup>
  const fullPath = ref(null)
  QRCode.toDataURL(fullPath.value + ...
</script>

What I want to do is something like:

<script setup>
  // not working phantasy code
  QRCode.toDataURL(window.location.href + ...
</script>

When using useRouter() and useRoute()'s .fullPath attribute, I still only get the relative path / instead of :3000/.


Full code on GitLab: pages/index.vue

I'm trying to let players join a game via QR Code. Since that game will be hosted on several IP's, i want to dynamically generate the URL.

This is my current workaround in my NuxtJS Vue Component:

<template>
  <input placeholder="copy browser window url into this field" v-model="fullPath" @change="generateQR">
</template>

<script setup>
  const fullPath = ref(null)
  QRCode.toDataURL(fullPath.value + ...
</script>

What I want to do is something like:

<script setup>
  // not working phantasy code
  QRCode.toDataURL(window.location.href + ...
</script>

When using useRouter() and useRoute()'s .fullPath attribute, I still only get the relative path / instead of http://10.16.1.173:3000/.


Full code on GitLab: pages/index.vue

Share Improve this question edited Jun 17, 2022 at 17:28 kissu 47k16 gold badges90 silver badges189 bronze badges asked Jun 16, 2022 at 11:14 Dominik ZiDominik Zi 4435 silver badges14 bronze badges
Add a ment  | 

3 Answers 3

Reset to default 5

Try to check if you are in client side before accessing to 'window' object, you can use :

if (process.client) {
      console.log(window.location.href)
}

Try to use this:

this.$route.query

In Nuxt 3 you can use the posable useRequestURL() to get the current URL on both server and client (may not work if using hybrid rendering):

const url = useRequestURL();
console.log(url.href);
发布评论

评论列表(0)

  1. 暂无评论