位置: 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游戏笔记本怎么样?)

  • iqoo8怎么设置主题(iqoo3怎么设置主页面)

    iqoo8怎么设置主题(iqoo3怎么设置主页面)

  • 电话手表长续航模式怎么退出(电话手表长续航模式怎么设置)

    电话手表长续航模式怎么退出(电话手表长续航模式怎么设置)

  • 微信是别人的实名认证怎么更改(微信是别人的实名认证怎么解封)

    微信是别人的实名认证怎么更改(微信是别人的实名认证怎么解封)

  • freebuds3丢了如何定位(freebuds3丢了一只怎么配对)

    freebuds3丢了如何定位(freebuds3丢了一只怎么配对)

  • 抖音无效视频怎么解决(抖音无效视频怎么取消掉)

    抖音无效视频怎么解决(抖音无效视频怎么取消掉)

  • 微信语音通话接不到提示怎么办(微信语音通话接不了怎么办)

    微信语音通话接不到提示怎么办(微信语音通话接不了怎么办)

  • 火山号被永久封禁怎么才能解封(火山号被永久封禁怎么人工申诉)

    火山号被永久封禁怎么才能解封(火山号被永久封禁怎么人工申诉)

  • 3.7v电池用5v充电器(3.7v电池可以给5v设备供电吗)

    3.7v电池用5v充电器(3.7v电池可以给5v设备供电吗)

  • 1赫兹等于多少秒(1赫兹等于多少瓦功率)

    1赫兹等于多少秒(1赫兹等于多少瓦功率)

  • 控制器中的pc是什么(pc控制器的工作原理)

    控制器中的pc是什么(pc控制器的工作原理)

  • 1440乘900算高清吗(1440*900算高清吗)

    1440乘900算高清吗(1440*900算高清吗)

  • 华为p40pro的听筒在哪里

    华为p40pro的听筒在哪里

  • 手机没欠费,打开数据连上不了网(手机没欠费打电话说欠费)

    手机没欠费,打开数据连上不了网(手机没欠费打电话说欠费)

  • 荣耀v10支持多少w快充(荣耀V10支持多少G的内存卡?)

    荣耀v10支持多少w快充(荣耀V10支持多少G的内存卡?)

  • 有锁卡贴机能还原网络设置吗(有锁卡贴机能买吗)

    有锁卡贴机能还原网络设置吗(有锁卡贴机能买吗)

  • opporeno视频通话不带美颜吗

    opporeno视频通话不带美颜吗

  • 手机投屏检测不到电脑(手机投屏检测不到设备怎么回事)

    手机投屏检测不到电脑(手机投屏检测不到设备怎么回事)

  • win10education是什么版本(win10education和pro区别)

    win10education是什么版本(win10education和pro区别)

  • 苹果8阻止来电有记录吗(苹果阻止来电后发短信显示什么)

    苹果8阻止来电有记录吗(苹果阻止来电后发短信显示什么)

  • 电脑突然绿屏怎么回事(电脑怎么会绿屏)

    电脑突然绿屏怎么回事(电脑怎么会绿屏)

  • 苹果九键怎么换行(苹果九键怎么换行打字)

    苹果九键怎么换行(苹果九键怎么换行打字)

  • 天猫店小二在哪里找(天猫店小二电话号码多少?)

    天猫店小二在哪里找(天猫店小二电话号码多少?)

  • 为什么小红书下载不了(为什么小红书下载了不在桌面上)

    为什么小红书下载不了(为什么小红书下载了不在桌面上)

  • ipx7级防水包含热水吗(ipx7级防水和ipx5级防水)

    ipx7级防水包含热水吗(ipx7级防水和ipx5级防水)

  • 金立5007是什么型号(5005金立是什么型号)

    金立5007是什么型号(5005金立是什么型号)

  • 小米手环4nfc版怎么设置密码(小米手环4nfc版恢复出厂后如何连接)

    小米手环4nfc版怎么设置密码(小米手环4nfc版恢复出厂后如何连接)

  • 阿里巴巴如何开店铺(阿里巴巴如何开发客户)

    阿里巴巴如何开店铺(阿里巴巴如何开发客户)

  • 【Vue全家桶】新一代的状态管理--Pinia(vue全家桶教程)

    【Vue全家桶】新一代的状态管理--Pinia(vue全家桶教程)

  • 资源税的计税依据为应税产品的开采量
  • 申报个体经营所得税时营业外收入怎么填
  • 增值税发票系统怎么读入发票
  • 公司购买股票如何做账
  • 公司股东和自然人股东可否代持股权
  • 咨询费计入什么明细科目
  • 自己打印的机票怎么退票
  • 小规模核定征收需要做账吗
  • 行政单位其他收入包括哪些
  • 分支机构是不是需要设立账簿
  • 跨境电商零售正面清单
  • 预收账款本期发生额怎么算
  • 交印花税合同金额怎么算
  • 本月做未开票收入,下月开票怎么做账
  • 收到社保局生育津贴
  • 小微企业减免税如何算
  • 工厂出租厂房税率
  • 审核费用发票需要发票吗
  • 代扣代缴企业所得税账务处理
  • 模拟评估了是什么意思
  • 房地产企业回迁房税收规定
  • 外地培训产生的费用
  • 税收法定原则的意义
  • 跨月的红字发票
  • 个税手续费返还要交增值税吗
  • 合同付款会计分录
  • 职工福利费扣除率是多少
  • 外贸公司收汇可以收运费吗
  • 苹果手机怎么修改默认输入法
  • ping命令测试结果
  • 增值税进项税抵扣销项税
  • PHP:apache_response_headers()的用法_Apache函数
  • 工资个人所得税怎么减税条件
  • 发票已到货未到会计处理
  • linux子网掩码自动变成24
  • php实现多条件查询
  • 贷款的减值会计怎么做账
  • 其他债权投资减值可以转回吗
  • 报个税时显示扣缴单位无有效的税费种认定信息
  • 微前端Qiankun
  • 纯HTML+CSS小兔鲜儿网站首页(静态网页)
  • pytorch训练函数
  • python 断言
  • 从公账发工资是什么凭证
  • python如何点击网页按钮
  • 个税申报和社保申报的金额要一致吗
  • 托盘入账哪个科目最好
  • 营业总收入包括营业外收入吗
  • 增值税留抵税额是什么意思
  • 职工福利按工资的实付还是应付提取
  • 销项税和进项税计算公式
  • 暂估成本跨年后收到票如何处理,红冲按哪个金额冲
  • 公司注销时应付账款怎么处理
  • 用人单位劳务派遣人员工资怎么做账
  • 加盟费开发票
  • 以前年度的固定资产入成原材料了怎么办
  • 费用报销单怎么写 样本图片
  • 每月可以先报税再缴费吗
  • 事业单位可以报考事业单位吗
  • 未达起征点的收入怎么入账
  • win8怎么没有我的电脑
  • 苹果正式推送ios
  • ubuntu flash player
  • giantantispywaremain.exe是什么进程 有什么作用 giantantispywaremain进程查询
  • win7系统玩游戏怎么样
  • centos7.2安装
  • win10预览版怎么升级到正式版
  • jquery搜索页面内容
  • Activity 的四种启动模式
  • jQuery on绑定的事件
  • node.js app
  • android开发教程视频
  • JavaScript italics方法入门实例(把字符串显示为斜体)
  • android 引用第三方库
  • 重庆国税12366电子税务局官网入口
  • 广西地方税务局2018年1号公告
  • 收到税务局税收返还
  • 天津个人所得税电话咨询电话
  • 一般贸易和非一切贸易
  • 企业可以享受哪些政策优惠
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设