位置: IT常识 - 正文

在Vue3项目中,输入没有路由对应的路径时候,怎么跳转到404或者首页(在vue3项目中自定义组件通常存放在)

编辑:rootadmin
在Vue3项目中,输入没有路由对应的路径时候,怎么跳转到404或者首页

推荐整理分享在Vue3项目中,输入没有路由对应的路径时候,怎么跳转到404或者首页(在vue3项目中自定义组件通常存放在),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue在项目中怎么用的,vue3例子,在vue3项目中自定义组件通常存放在,在vue项目中遇到的最大的困难,在vue3项目中使用vue2,vue在项目中遇到哪些问题,在vue3项目中自定义组件通常存放在,vue在项目中怎么用的,内容如对您有帮助,希望把文章链接给更多的朋友!

在一个Vue3应用中,通常情况下,我们使用Vue Router来处理路由。在Vue Router中,当用户请求输入一个不正确的URL路径时,没有路由与其相匹配,这时候会返回一个默认的404页面或者重定向到首页。因此,本文将通过以下几个方面来讨论如何在Vue3项目中实现这一功能。

1. 异步组件

在Vue3中,我们可以使用异步组件来延迟加载路由组件,并在组件加载完成前显示一个加载指示器。异步组件可以通过函数返回一个promise来实现,该promise在组件加载成功后resolve。

const Example = () => import('./Example.vue')

对于异步组件,当路由不能匹配时,Vue Router可以自动加载404组件。这要求您在路由表中明确定义404路由,并将其放在最后。这是一个示例:

const routes = [ { path: '/home', component: Home }, { path: '/example', component: Example }, { path: '/404', component: NotFound }, { path: '*', redirect: '/404' } ]

在这个示例中,我们向路由表中添加了一个NotFound组件,当路径不匹配时就会被加载。

2. 全局前置守卫在Vue3项目中,输入没有路由对应的路径时候,怎么跳转到404或者首页(在vue3项目中自定义组件通常存放在)

Vue Router还提供了另一种处理404的方法——全局前置守卫。这种方法涉及使用beforeEach钩子函数,在导航到任何路由之前进行检查。如果没有匹配的路由,则可以将用户重定向到404页面。

router.beforeEach((to, from, next) => { if (to.matched.length === 0) { next('/404') } else { next() } })

在上面的代码中,我们检测了即将要跳转到的路由对象是否拥有matched属性,如果有,那么继续跳转,否则就重定向到/404路由。

3. HTML5 history模式

Vue Router还支持HTML5 history模式,在这种模式下,我们可以将URL路径看起来像接近传统网站中的路径,而不是像一个前端路由。例如,我们可以让'www.xxx.com/about'与'/about'匹配。

在HTML5 history模式下使用时,客户端发送的任何请求都将被发送到服务器,而服务器将始终返回同一HTML文件。因此,在后端设置路由规则是必要的。

为在vue-router中启用history模式,需要使用vue-router选项中的mode属性:

const router = new VueRouter({ mode: 'history', routes: [...] })

在使用HTML5 history模式时,如果用户访问的URL不存在,则可以将用户重定向到默认首页或自定义404页面。

4. 计算属性

在Vue3中,我们还可以使用计算属性来实现处理404的逻辑。我们可以根据路由对象中matched属性的长度来检测是否有匹配的路由。如果没有,我们可以使用$route.path将用户重定向到自定义404页面。

<template> <div v-if="isNotFound"> <h1>404 Not Found</h1> </div> </template> <script> export default { computed: { isNotFound() { return this.$route.matched.length === 0 } }, watch: { isNotFound(val) { if (val) { this.$router.push('/404') } } } } </script>

在上面的示例中,我们使用一个计算属性isNotFound和一个watcher来监视isNotFound的变化。当isNotFound变为true时,我们将路由推送到/404。

结论

在Vue3中,处理404页面的方法有很多。我们可以使用异步组件、全局前置守卫、HTML5 history模式以及计算属性等技术来实现这一功能。这些方法可以根据我们的需求和项目的规模进行选择。无论使用哪种技术,我们都应该遵循最佳实践并保持代码清晰易读,并且对用户友好。

本文链接地址:https://www.jiuchutong.com/zhishi/287118.html 转载请保留说明!

上一篇:网站国际化 多语言处理工具i18n安装使用方法(网站国际化方案)

下一篇:神舟战神K670D 笔记本Windows10系统改Windows7系统的安(神舟战神k670c-g4e1游戏笔记本怎么样?)

  • oppoa7x屏幕多少英寸(oppoa7x的屏幕多大尺寸)

    oppoa7x屏幕多少英寸(oppoa7x的屏幕多大尺寸)

  • oppo k7支持呼吸灯吗(oppok1怎么开启呼吸灯)

    oppo k7支持呼吸灯吗(oppok1怎么开启呼吸灯)

  • 荣耀20双击亮屏在哪里设置(荣耀20双击亮屏是不是取消了)

    荣耀20双击亮屏在哪里设置(荣耀20双击亮屏是不是取消了)

  • 华为mate20声音突然变小(华为mate20声音为什么会突然变小)

    华为mate20声音突然变小(华为mate20声音为什么会突然变小)

  • 无线网卡搜不到wifi(无线网卡搜不到5g网络)

    无线网卡搜不到wifi(无线网卡搜不到5g网络)

  • 微信朋友圈视频多长时间(微信朋友圈视频怎么下载)

    微信朋友圈视频多长时间(微信朋友圈视频怎么下载)

  • Word为怎么在页脚里加一条直线(word文档怎么在一页里显示)

    Word为怎么在页脚里加一条直线(word文档怎么在一页里显示)

  • iphonexr屏幕亮度突然变暗(iphonexr屏幕亮度多少)

    iphonexr屏幕亮度突然变暗(iphonexr屏幕亮度多少)

  • iphone11人脸识别一直转(iphone11人脸识别不灵敏)

    iphone11人脸识别一直转(iphone11人脸识别不灵敏)

  • 手机可以上网电脑不能上网(手机可以上网电脑连不上网怎么回事)

    手机可以上网电脑不能上网(手机可以上网电脑连不上网怎么回事)

  • 畅连视频是什么意思(什么叫畅连视频)

    畅连视频是什么意思(什么叫畅连视频)

  • mpgt2cha是ipad几(ipad mpgt2ch/a)

    mpgt2cha是ipad几(ipad mpgt2ch/a)

  • 小米手表苹果手机能用吗(小米手表苹果手表对比)

    小米手表苹果手机能用吗(小米手表苹果手表对比)

  • oppo reno3上市时间(opporeno3上市时间和价格大内存)

    oppo reno3上市时间(opporeno3上市时间和价格大内存)

  • iphonex怎么弄一键锁屏(苹果1x怎么弄)

    iphonex怎么弄一键锁屏(苹果1x怎么弄)

  • 怎么在wps表格中找名字(怎么在wps表格中查找自己想要的内容数据)

    怎么在wps表格中找名字(怎么在wps表格中查找自己想要的内容数据)

  • 淘宝的二手市场叫什么(淘宝的二手市场在哪里)

    淘宝的二手市场叫什么(淘宝的二手市场在哪里)

  • 荣耀手环5怎么充电(荣耀手环5怎么换表带图解)

    荣耀手环5怎么充电(荣耀手环5怎么换表带图解)

  • 苹果短信效果发给对方为啥没有效果(苹果苹果发短信)

    苹果短信效果发给对方为啥没有效果(苹果苹果发短信)

  • 小米手环4支持门禁卡吗(小米手环4支持离线支付吗)

    小米手环4支持门禁卡吗(小米手环4支持离线支付吗)

  • 苹果充电头功率(苹果充电头功率多大)

    苹果充电头功率(苹果充电头功率多大)

  • 解决本地浏览器运行项目时的跨域问题Access to XMLHttpRequest at ‘file:///C:/Users/Len/Desktop/%E5%8F%AF%E4%BF%AE%E6%94%(解决本地浏览器的方法)

    解决本地浏览器运行项目时的跨域问题Access to XMLHttpRequest at ‘file:///C:/Users/Len/Desktop/%E5%8F%AF%E4%BF%AE%E6%94%(解决本地浏览器的方法)

  • 分享一个CSS的垂帘效果(css垂直导航栏)

    分享一个CSS的垂帘效果(css垂直导航栏)

  • 户外电源强制国标发布或加速行业洗牌 未来产品将往大容量及轻量化发展(户外电源需要要充电吗)

    户外电源强制国标发布或加速行业洗牌 未来产品将往大容量及轻量化发展(户外电源需要要充电吗)

  • 应交税金和应交税费有啥区别
  • 外商投资合伙企业法
  • 税务鉴定收费标准
  • 企业所得税的起征点
  • 普通人如何交五险一金
  • 营业收入包括投资净收益吗
  • 其他应收款计提坏账吗
  • 原材料的运输
  • 应付股利科目设置
  • 固定资产出售增值税税率
  • 存在上期留抵税额怎么计算即征即退
  • 案例分析个人总结报告
  • 小规模的企业
  • 增值税普通发票税率表
  • 差旅费补贴需要缴纳个人所得税吗需要发票
  • 六月涉税提醒通知
  • 营业成本包括费用类吗
  • 发票领出来之后税盘要怎么处理
  • 所得税预缴资产怎么算
  • 房产契税什么时候可以退
  • 抄报税失败是怎么回事
  • 记账凭证做完之后干什么
  • 模具费属于什么费用
  • apple ID怎么解绑设备
  • 只开发票没有合同需要缴纳印花税吗?
  • 融资租赁租金计算公式
  • 购入办公楼按多少折算
  • 电脑很空但是占用率90
  • php字符串赋值
  • 发票已认证还能作废吗2020
  • 股份有限公司变更法人的流程
  • PHP:realpath_cache_size()的用法_Filesystem函数
  • 实收资本的会计编码
  • 集体租赁住房有房产证吗
  • 建筑安装企业核定征收企业所得税
  • 负债大于资产是逆差还是顺差
  • 申请高新技术企业收入要多少
  • 网络应用开发技术
  • 蓝桥杯2021出结果
  • 建筑保温材料出台了哪些限制政策
  • 换电脑了怎么办
  • 怎么查企业历史
  • 企业金融资产包括银行存款吗
  • 汽车维修企业怎么认定小微企业
  • 公司清算的特征
  • 清卡后还可以勾选发票吗
  • 公司的零星开支怎么做账
  • 增值税发票的抵扣期限
  • 法人和税务可以是一个人吗
  • 企业之间无偿使用资金涉税
  • 支票存根联可以涂改吗
  • 以银行存款支付固定资产修理费
  • 长期待摊的分录
  • 拍卖土地支付的法律依据
  • 业务招待费汇算清缴比例
  • 库存商品结转成本需要附件吗
  • 防伪税控服务费全额抵扣政策
  • 坏账准备的会计核算
  • windows预体验版本遇到问题
  • freebsd使用
  • Windows 2003 SP2 简体中文版下载地址
  • redhat图形化界面启动
  • 用u盘重新装系统
  • vc_mbcsmfc.exe是什么
  • 系统自动设置网络连接
  • win7虚拟内存怎么设置
  • wan 微型端口
  • ubuntu16.04远程连接
  • Win10 Mobile/PC Build 10586.550曝光:主要修复bug和优化性能
  • 信佛是信教吗
  • win8系统安装教程图解
  • Unity3D游戏开发标准教程吴亚峰于复兴人民邮电出版社
  • jquery中判断某个类是否存在的方法
  • 提出好的建议
  • python多线程操作
  • Jquery和BigFileUpload实现大文件上传及进度条显示
  • 用python绘制一条直线
  • 债务核销条件
  • 消费税的征收范围是如何规定的
  • 国家个人所得税征收标准
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设