边城@浪子 2023-03-01 23:31 采纳率: 0%
浏览 1683
已结题

vue3中router.push无法跳转

在vue3中使用router.push无法跳转的问题,路由定义如下:

const publicRoutes = [
  {
    path: '/login',
    component: () => import('@/views/login/index')
  },
  {
    path: '/',
    component: () => import('@/views/layout/index')
  }
]

const router = createRouter({
  history: createWebHistory(),
  routes: publicRoutes
})

export default router

在一个login组件中,登录成功之后,进行路由跳转,但是router.push没有任何反应,代码如下:

<script setup>

import { useRouter } from 'vue-router'
// 数据源
const loginForm = ref({
  username: 'admin',
  password: '1234qwer'
})

// 路由
const router = useRouter()

// 登录动作处理
const loading = ref(false)
const loginFormRef = ref(null)
const store = useStore()
const handleLogin = () => {
  loginFormRef.value.validate((valid) => {
    if (!valid) return

    loading.value = true
    store
      .dispatch('user/login', loginForm.value)
      .then(() => {
        loading.value = false
        console.log(router, 'haha')  // 这里是可以打印出结果,也可以打印出router的信息,但是下面的push就是无法跳转
        router.push('/')
        
      })
      .catch((err) => {
        console.log(err)
        loading.value = false
      })
  })
}
</script>

如果在router.push()随便写一个不存在的路由,会报错没有找到对应的路由,也就是这里的router.push匹配到了路由,但是为啥没有跳转呢?
版本信息如下:


    "vue": "^3.2.8",
    "vue-router": "^4.0.11",
    "vuex": "^4.0.2"
  • 写回答

1条回答 默认 最新

  • 禅思院 前端领域优质创作者 2023-03-02 08:53
    关注

    第一处错误

    img

    const publicRoutes = [
      {
        path: '/login',
        name: '/login',
        component: () => import('@/views/login/index')
      },
      {
        path: '/',
        name: 'home',
        component: () => import('@/views/layout/index')
      }
    ]
    

    第二处错误

    img

    router.push({path:'/'}) // 这是传一个对象  path 或者name  但是path要全路径  router.push({name:'home'})
    
    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 3月10日
  • 创建了问题 3月1日

悬赏问题

  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
  • ¥15 关于#hadoop#的问题