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

相关推荐
OpenTiny社区9 小时前
🎨 看完 GenUI SDK 源码我悟了!
前端·vue.js·github
mqcode11 小时前
你项目里的 axios,封对了吗?从裸用到生产级的四步进化
vue.js·axios
Linsk12 小时前
组件 = 模板 + 业务逻辑
java·前端·vue.js
前端啊15 小时前
告别 el-table 打印难题,vue3-print-el-table 来了!
前端·vue.js
AprChell16 小时前
低代码设计器和低代码设计引擎架构综述
前端·vue.js·低代码
Ruihong17 小时前
🎉 VuReact 1.9.0 发布,支持 Vue 3.4 defineModel 编译到 React
vue.js·react.js·面试
英勇无比的消炎药17 小时前
TinyRobot 源码深度分析:OpenTiny 的 AI 对话组件库
前端·vue.js·github
行者全栈架构师2 天前
UniApp集成vk-uview-ui组件库详解:打造高效UI开发体验
前端·vue.js
Csvn2 天前
Vue 3 defineModel 翻车实录:多个 v-model 绑定到底怎么写?
前端·vue.js
Momo__2 天前
VueUse createReusableTemplate —— 单文件组件内的模板复用神器
前端·vue.js