vue.js

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript类库 > vue.js > vue3输入无效路由跳转到指定error页面

vue3输入无效路由跳转到指定error页面问题

作者:小杨爱编程

这篇文章主要介绍了vue3输入无效路由跳转到指定error页面问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

开始准备一个Error.vue展示错误界面

<template>
<div class="border">
  <el-result
      icon="error"
      title="404,出错了!"
      sub-title="当前地址无法解析,请返回!!!!!"
  >
    <template #extra>
      <el-button type="primary" @click="goBack">返回</el-button>
    </template>
  </el-result>
</div>
</template>
<script lang="ts" setup>
import {useRouter} from 'vue-router'
const router = useRouter()
const goBack = ()=>{
    router.push("/index")
}
 
</script>
 
<style scoped>
.border{
  width: 70%;
  height: 500px;
  background-color: white;
  border-radius: 10px;
  margin: 50px auto;
}
</style>

配置好Error,vue界面的路由

const routes = [
    //反馈界面
    { path: '/error', component: Error ,meta: {title: "出错了!当前界面不存在"}},
    //首页
    { path: '/index', component: Index,meta: {title: "首页"}},
 
]
 
const router = VueRouter.createRouter({
    // 4. 内部提供了 history 模式的实现。为了简单起见,我们在这里使用 hash 模式。
    history: VueRouter.createWebHashHistory(),
    routes, // `routes: routes` 的缩写
})
 
export default router

配置router.beforeEach

router.beforeEach((to, from, next) => {//beforeEach是router的钩子函数,在进入路由前执行
    if (to.matched.length === 0 ){
        next("/error")
    }
})

效果展示:

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文