vue常见的面试题(4)

什么是vuex,详述vuex的工作流程

vuex是vue的状态管理工具,里面存储vue的公用资源与方法

工作流程:

1.在vue组件里面,通过dispatch来触发Actions提交修改数据的操作。

2.然后再通过actions的commit来触发mutations来修改数据。

3.mutations接收到commit的请求,就会自动通过Mutate来修改state里面的数据。

4.最后由store触发每一个调用它的组件的更新




详述vuex的核心属性及使用

state

state存储了Vuex的基本数据,在state中存储的数据都是经过Vue底层watcher侦听的数据,可以实现响应式数据

actions

actions存放了Vuex中所有的异步操作,可以在actions中通过commit分发不同的mutation,在不同的情况下执行不同的方法

mutations

mutations存放了Vuex中所有关于state的操作,修改state只能通过mutations,否则的话数据不会响应式更新

getters

getters就类似与Vue实例中的computed,计算属性,所有关于数据的复杂计算应该放在getters中来操作

modules

modules,类似于redux中的reducer,每一个module都拥有自己的state、mutations、actions、getters;将整个store根据功能或者数据分解成不同的模块,最后合并在一个Store中





vue和jquery的区别

1.jQuery首先要获取到dom对象,然后对dom对象进行值的修改等操作

2.Vue是首先把值和js对象进行绑定,然后修改js对象的值,Vue框架就会自动把dom的值就行更新。

3.可以简单的理解为Vue帮我们做了dom操作,我们以后用Vue就需要修改对象的值和做好元素和对象的绑定,Vue这个框架就会自动帮我们做好dom的相关操作

4.这种dom元素跟随JS对象值的变化而变化叫做单向数据绑定,如果JS对象的值也跟随着dom元素的值的变化而变化就叫做双向数据绑定



vue中的slot是什么?

插槽(Slot)是Vue提出来的一个概念,正如名字一样,插槽用于决定将所携带的内容,插入到指定的某个位置,从而使模板分块,具有模块化的特质和更大的重用性。插槽显不显示、怎样显示是由父组件来控制的,而插槽在哪里显示就由子组件来进行控制

slot插槽,其实就是用来做内容分发,使得可以最大程度的复用组件,达到每次使用同一个组件的时候可以根据情况创建不同的内容的功能


SPA首屏加载慢,该如何解决?

1,模块化

2,懒加载

3,抽取css文件

4,使用预渲染的方式

你可能感兴趣的:(vue常见的面试题(4))