谈谈你对前端路由原理的理解?hash和history的实现原理可以介绍一下吗?
简单来说,就是在保证只有一个HTML页面,在用户交互的时候不用刷新和跳转页面的同时,监听URL的变化然后进行组件切换。
实现原理:#后面hah值的变化,不会导致浏览器向服务器发出请求,浏览器不会发出请求就不会刷新页面,同时监听hashchange事件可以知道hash发生了哪些变化,然后根据hash变化来实现更新页面部分内容的操作
history:history模式的实现,主要是HTML5标准发布的两个API,pushstate和replacestate,这两个API可以在改变URL,但不会发送请求,这样就可以监听URL变化来实现更新页面部分内容的操作。
简单介绍vuerouter的实现步骤?
首先是安装依赖,新建vue文件,导路由、安路由、导组件、配置组件路由。
在vue路由中传参都有哪些方法?
· 动态路由传参,这种传参方式可以在地址栏中直接显示,刷新页面不会丢失
· 基于query拼接字符串传参,这种传参方式也可以在地址栏中直接显示,刷新页面也不会丢失。
· 直接传参,这种传参方式不会直接显示到地址栏当中,刷新页面数据会丢失
vuerouter路由懒加载如何实现?
路由懒加载就是将路由对应的组件打包成一个个的JS代码块,只有这个路由被访问的时候才会加载对应的代码块
谈谈vuerouter中route和router区别?
· route表示当前的路由信息对象,包含了当前URL解析得到的信息
· router是用来进行路由跳转的