Vue面试题(二)

1、Vuex工作流程?


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.至此,客户端显示自己请求,即服务端返回的东西?

*所谓三次握手就是客户端在请求与服务器相连接时,彼此共计发送了三次数据包

三次握手是由客户端先发送请求,客户端发送报文给服务器,服务器成功接收后,处理接收到的报文再回应客户端,最后由客户端再次回应,并发送处理后的报文? ?

*所谓四次挥手就是客户端与服务端在断开连接时,彼此交互传输了四次数据包

四次挥手不知道哪一方是主动方,哪一方是被动方,此时主动方(可能是客户端,也可能是服务器)发送报文,被动方回应两次数据包后,主动方确认并回应,发送第四次数据包。


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。