Vue3中404页面捕获(图文详情)

Vue3中404页面捕获(图文详情)

在 Vue 项目中,捕获并处理 404 页面(即"未找到页面"或"页面不存在") 是非常重要的,尤其是在构建单页面应用程序(SPA, Single Page Application)时。由于 SPA 的路由是通过 JavaScript 动态管理的,因此如果用户访问了一个不存在的 URL,我们需要确保能够正确地显示 404 页面,而不是让浏览器返回默认的 404 错误。

前置条件,首先需在一个可用的vue3项目中正确安装了Vue router,如还没有请参考文章
Vue3中使用Router进行路由配置

404页面捕获

打开ElementPlus官网:https://element-plus.org/zh-CN/component/result

找到结果页引入样式作为404页面展示效果

在pages下添加error文件夹,同时新建404.vue页面

vue 复制代码
<template>
	<el-result icon="warning" title="404提示" sub-title="哎呀,不好意思你找的页面走丢了~">
		<template #extra>
			<el-button type="primary" @click="$router.push('/')">回到首页</el-button>
		</template>
	</el-result>
</template>

<script setup>
	import {} from "vue";
</script>

<style lang="scss" scoped></style>

查看vue router官网:https://router.vuejs.org/zh/guide/essentials/dynamic-matching.html

找到404页面捕获设置

在router的index.js下添加路由捕获和404.vue页面加载

js 复制代码
import NotFound from "@/pages/404.vue";
const routes = [
	{ path: "/:pathMatch(.*)*", name: "NotFound", component: NotFound }
];

打开浏览器任意输入一个不存在的也面路由,即可跳转到404走丢页面,点击回到首页按钮可回到首页

相关推荐
LuHang4 小时前
从天地图切换到高德地图:一次真实的底图迁移实战
前端·vue.js·cesium
ruanno_top7 小时前
Vue 3 后台权限路由:我漏掉了按钮级裁剪,还把 403 写成了 404
vue.js
栉甜8 小时前
Vue2学习内容(上)
前端·javascript·vue.js·学习
小郎君65810 小时前
(六)el-cascader 的展示值为什么不能直接 join:emitPath、路径还原与多选去重
vue.js·算法
用户0936717554110 小时前
用 4500 行 TypeScript 复刻了童年方格纸上的海战棋
前端·vue.js
行走的陀螺仪12 小时前
Claude Code 从入门到实战(一):安装、登录与第一个Vue项目
前端·javascript·vue.js
jktantan1 天前
Vue keep-alive 切标签后滚动位置回顶?因为 onDeactivated 里读到的 scrollTop 是 0
前端·javascript·vue.js
小郎君6581 天前
(一)为什么表单需要第三种状态:disabled、readonly 与纯文本展示
前端·vue.js
jktantan1 天前
(二)Vue 3 的 attrs 不是响应式:el-form 扩展属性同步的三种方案
前端·javascript·vue.js·element-plus
Highcharts.js2 天前
Highcharts 集成到 React 或 Vue 项目中时,如何高效地使用 TypeScript技巧?
vue.js·人工智能·react.js·typescript·前端框架·highcharts