1、Vuex工作流程?
①在Vue组件里面,通过dispatch来触发actions提交修改数据的操作。
②然后再通过actions的commit来触发mutations来修改数据。
③mutations接收到commit的请求就会自动通过Mutate来修改state(数据中心里面的数据状态)里面的数据。
④最后由store更新每一个调用它的组件。
Vuex的作用:项目数据状态的集中管理,复杂组件的数据通信问题
2、vue-router导航守卫 to from next
(1)全局
router.beforeEach() 进入路由之前
router.beforeResolve () 路由跳转中
router.afterEach () 路由跳转后
(2) 单个路由级别的
beforeEnter () 先调用全局,再调用局部
(3) 组件级别的
beforeRouteEnter 进入路由之前
beforeRouteUpdate (2,2) 路由复用同一组件时
beforeRouteLeave 离开当前路由
to和form将要进入和将要离开的路由对象 next跳转新路由,当前的导航被中断,重新开始一个新的导航
3、v-if和v-show的区别?
v-if和v-show在条件为真的情况下是都会渲染并显示的,v-if在条件为假的情况下不会渲染,v-show在条件为假的情况下会渲染但不会显示(用display:none隐藏了)
4、 浏览器中的回流和重绘是什么?
重绘:当元素的外观或外观可见性(visibility)发生变化时会触发重绘
回流:render树中的部分或全部因为元素的规模尺寸、布局、隐藏等改变,需要重新计算render树
5、在地址栏输入网址敲回车发生了什么?
1.输入url地址后,首先进行DNS解析,将相应的域名解析为IP地址;
2.客户端根据IP地址去寻找相应的服务器;
3.与服务器进行TCP的三次握手;
4.客户端找到相应的资源库;
5.根据资源库返回页面信息;
6.浏览器根据自身的执行机制解析页面;(浏览器的执行机制?重绘?重排?......)
7.最后服务器将解析信息返回给客户端,进行TCP的四次挥手。
8.至此,客户端显示自己请求,即服务端返回的东西?
*所谓三次握手就是客户端在请求与服务器相连接时,彼此共计发送了三次数据包
三次握手是由客户端先发送请求,客户端发送报文给服务器,服务器成功接收后,处理接收到的报文再回应客户端,最后由客户端再次回应,并发送处理后的报文? ?
*所谓四次挥手就是客户端与服务端在断开连接时,彼此交互传输了四次数据包
四次挥手不知道哪一方是主动方,哪一方是被动方,此时主动方(可能是客户端,也可能是服务器)发送报文,被动方回应两次数据包后,主动方确认并回应,发送第四次数据包。