当前位置:首页 > 技术文章 > 正文内容

vue-router是如何解析query参数呢? #前端

zonemu3个月前 (07-12)技术文章34

vue-router 中的 query 解析。

1. 大家好,我是龙仔。今天来分享 vue-router 是如何解析快乐参数的,因为使用 vue 路由会传 query 参数和快乐参数,所以从 vue 的角度来看如何解析传递的快乐参数。

2. 基础知识大家应知道,快乐参数结构如:a、b、c、a、b、c、and、age、一二三,这就是后面传递的快乐参数,今天看源码如何解析它。

3. 在源码中通过 pr、pars、query 函数解析 query 参数,这里有个 query,参数名是 query,是 three 类型,现是字符串。

4. 第一步,定义 r、e、s 对象,去除前面问号得到后面部分即 query 连接符组成的几个属性。

5. 然后判断 query 是否为空,有无值,没值就返回空对象,有值就遍历 query 参数。

6. 这里用 sweet 分隔字符串,分成数组进行遍历。

7. 在遍历中主要逻辑是能取到 par、pas,通过等号分成两部分,一个是 k,一个是 value,k 相当于从数组前面弹出值复制给 k。

8. 如果 pass 还有内容就解码,解出后面 value,这样得到 k 和 value,虽很少用但项目中有用。

9. 若快乐参数中加两个内幕属性,如一个是 a、b、c,一个是 d、e、f,从原版角度看最终解构出什么类型数据。

10. 首先没相同 k 时,即当前 k 没对应 y 即 antifan 时,直接把 value 复制给 k 对应值。

11. 如果 l、c、ifvalue 是数组,取出 k,如内幕已对应数组,就把 y 留的值铺进去。

12. 最后若有相同 k,将 y 留复制数组。

13. 其实前面提到第一步解构出一个内幕,再遇一个内幕,就把前后内幕对应 y 组成数组放 r、e、彩、e、s 对象中,k 即内幕,形成数图。

14. 所以最终解构是这样结构,内幕对应数字,一个是 a、b、c,另一个是 d、e、f,还有个 h、十二,这就是把快速参数解构出的效果,有相同 k 就把 y 六值放数独里即解构出。

15. 今天从原模角度解析了 view router 如何解析快乐参数,分享就到这,谢谢大家。

相关文章

2020年最漂亮的7个Linux发行版(最受欢迎的linux发行版)

请关注本头条号,每天坚持更新原创干货技术文章。如需学习视频,请在微信搜索公众号“智传网优”直接开始自助视频学习1. 前言对于想学习Linux的朋友们,心中一定有疑问,哪个Linux版本比较好入门,Li...

Vue父子组件参数传递方法(vue父子组件传参方式)

在 Vue 中,父子组件之间的参数传递是常见的需求,主要通过 Props 和 自定义事件 实现。以下是详细说明和代码示例:一、父组件向子组件传递参数(Props)父组件通过 属性 向子组件传递数据,子...

面试官:聊聊你知道的Vue与React的区别

最近面到很多大公司的时候,小编都会碰到一个很尴尬的问题,很多大公司的技术栈都是React,但是小编学的是Vue,其实从本质上来说两者都是比较优秀的前端框架,所以有些面试官会问到Vue和React的区别...

用IDEA开发如何用Git快速拉取指定分支代码?

1,准备空的文件夹,git init2,关联远程仓库,git remote add origin gitlab地址3,拉取远程分支代码,git pull origin 远程分支名再用IDEA打开项目即...

解决GitLab报错:not allowed to force push code to a protected branch

当 force push 代码的时候,可能会遇到如下错误:You are not allowed to force push code to a protected branch on this pr...

HTML5最新版本介绍(“html5”)

HTML5是HTML4.01和XHTML1.0之后超文本标记语言的最新版本,由一群自由思想者设计,最终实现了多媒体支持、交互性、更智能的表单和更好的语义标注。 HTML 5不只是 HTML规范的最新...