vue3.0路由函数useRouter异常
本文发布于69天前,最后更新于 59 天前,其中的信息可能已经有所发展或是发生改变。

问题复现

当我在两个页面切换时,在setup函数的子函数里写了const router = useRouter(),想要以此实现跳转,结果useRouter()返回了undefined

<script>
import { reactive } from 'vue'
import { useRouter } from 'vue-router'
export default {
  setup(){
    const versions = reactive({ ...window.electron.process.versions })
    const backToHome=()=>{
      const router = useRouter()
      router.push("/login")
    }
    return{
      backToHome,
      versions
    }
  }
}
</script>

<script setup>
import { reactive } from 'vue'
import { useRouter } from 'vue-router'
const versions = reactive({ ...window.electron.process.versions })
const backToHome=()=>{
  const router = useRouter()
  router.back()
}
</script>

原理与解决

useRouteruseRoute两个函数必须在setup函数中或者在<script setup>的顶层才会返回routerroute对象

改成

<script>
import { reactive } from 'vue'
import { useRouter } from 'vue-router'
export default {
  setup(){
    const versions = reactive({ ...window.electron.process.versions })
    const router = useRouter()
    const backToHome=()=>{
      router.push("/login")
    }
    return{
      backToHome,
      versions
    }
  }
}
</script>

<script setup>
import { reactive } from 'vue'
import { useRouter } from 'vue-router'
const versions = reactive({ ...window.electron.process.versions })
const router = useRouter()
const backToHome=()=>{
  router.back()
}
</script>
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
Source: https://github.com/zhaoolee/ChineseBQB
Source: https://github.com/zhaoolee/ChineseBQB
Source: https://github.com/zhaoolee/ChineseBQB
颜文字
Emoji
小恐龙
花!
滑稽大佬
演奏
程序员专属
上一篇
下一篇