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走丢页面,点击回到首页按钮可回到首页

相关推荐
前端切图崽_小郭10 小时前
虚拟滚动:静态 vs 动态的核心差异与实现?
vue.js
白鲸开源12 小时前
Apache SeaTunnel Zeta Engine 的 Basic Auth 是怎么工作的?
java·vue.js·github
卤蛋fg612 小时前
vue 甘特图 vxe-gantt 的使用(四):周视图的渲染
vue.js
卤蛋fg612 小时前
vue 甘特图 vxe-gantt 的使用(三):月视图的渲染
vue.js
卤蛋fg614 小时前
vue 甘特图 vxe-gantt 的使用(一):年视图的渲染
vue.js
前端开发爱好者15 小时前
支持 110 种文件预览!兼容 Vue、React、Svelte!
前端·javascript·vue.js
秋天的一阵风18 小时前
Vue 3 里被严重低估的 API:InjectionKey
前端·javascript·vue.js
徐小夕1 天前
万字拆解 JitWord:企业级实时协同文档底层架构 + 大模型 AI 融合完整实践
前端·vue.js·github
用户83134859306981 天前
Cesium实现雾气效果:按钮一键控制打开/关闭雾气效果,滑块拖动实时控制雾气浓度
vue.js·cesium
锋行天下2 天前
如何用Vite实现Vue组件的按需打包和远程加载
前端·vue.js·前端框架