vue之组件内的路由钩子函数,params和query传参的区别,路由的跳转,路由元信息

一.组件内的路由钩子函数

(1)beforeRouteEnter(to, from, next) { 

            next();

        },

一进入组件立即执行,里面的next()方法必须执行

(2)beforeRouteUpdate(to, from, next) { 

            next();

        },

触发条件:1.地址栏发生了改变,比如params传参的时候配置动态路由

地址发生变化了, /vip/001 变成了 /vip/002 会触发

                 2.当query传参的时候,参数值发生了变化也会执行,因为query相当于get请求,组件路由更新钩子函数

不会触发:★ params传参的时候(没有配置动态路由) 是不会触发 组件路由更新钩子函数,

跳转的话在这里不可以使用this.$route.query.id,因为会获取之前的id不是跳转后的id

(3)beforeRouteLeave(to, from, next) { 

            next();

        },

离开组件立即执行

next(false)表示阻止路由跳转

二、params传参和query传参的区别

params:1.动态路由的方式,id传过去是数字类型,刷新后是字符串型

2.不采用动态路由的方式:第一次id是可以发送出去的是数字类型,但是值一刷新就消失了,如果不采用动态路由的方式,想刷新还存在就是用本地缓存的方式

3.用params传值,只能采用name的方式,不能采用path否则id传不过去

4.params传参,参数不会再地址栏展示出来

query:1.id传过去是数字类型 刷新之后是字符串类型

2.采用query传参的方式比params好在,刷新之后值不会消失

3.query传参可以使用path的方式而params不可以

4.使用query传参 参数是会在地址栏上明文展示出来

3.路由的跳转

4.路由元信息meta

(1)在index页面设置meta

(2)在组件页面进行使用

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容