小工具知识网

当前位置: 首页 > 行业知识 > 前端面试练习24.2.29

行业知识

前端面试练习24.2.29

2026-10-21 20:46:26 来源:互联网转载

一.关于Vuex说法

Vuex可以���来管理数据

()

Vuex也可以实现组件间的传值

mutation中的方法按照规定最好不要涉及异步方法

()

Vuex的属性有

state 存储状态

mutations 同步函数

actions 异步函数,并且调用的事mutations

getters 派生状态,类似与vue中的computed

module 组件,可以包含state,mutations,actions,getters,甚至module

二.关于Vue模块化开发的描述

高内聚,低耦合,可重复利用,便于维护

Vue实例没有执行DOM挂载,所以不会执行mounted钩子函数

三.关于客户端渲染和服务器端渲染的描述

服务器端渲染有利于SEO,且首页加载快

客户端渲染节省后端资源,但可能会加载慢出现白屏

服务器端渲染耗费流量,局部页面的变化也需要重新请求完整的页面

客户端首屏渲染时首先拿到空的html模板,之后继续发起数据请求。而服务器端渲染只需要请求一次,服务器会将请求的数据放在html模板中一起返回。

四.关于数组的操作不会触发视图的更新

push()在该数组最尾添加新的元素,然后返回更新后的数组长度,方法将改变原始数组的长度;

shift()删除该数组第一个元素,并且把该数组剩下的元素索引往前挪一位,然后返回删除的元素,方法将改变原始数组的长度;

reverse()反转该数组中元素的顺序,方法将改变原始数组。

concat()把两个以上的数字连接起来,该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。

push(),shift(),reverse()改变原数组,会触发视图跟新;

concat()不更改数组,会返回新数组,因此没有替换原数组,不触发视图更新,要用新数组替换原数组才能实现视图更新。

concat,filter,slice都不会引起更新

五.关于Vue组件间通信说法

Vuex可以实现任何关系的组件间的通信

①props传过来的,改数字,改字符串会报错,改数组,对象里面的值不会报错

②context是用在react中进行组件间的传值,Vue组件间传值可以通过props,$emit,Vuex,事件总线。

六.关于v-model的说法

v-model如果为不同元素绑定数据,则使用不同的元素property, 并抛出不同的事件

v-model本质上是语法糖,它负责监听用户的输入事件以更新数据

对input使用v-model,实际上是指定其 :value和input事件

v-model是内置指令,能用在自定义组件上

七.关于Vue2和Vue3的描述

Vue3中Template支持多个根标签,Vue2不支持

Vue3中的生命周期的挂载钩子是onMounted,需要引入才能使用

Vue3引入了tree-shaking,以模块的方式引入api,减小打包体积

Vue3的组合API中的setup()方法包含了所有的基本内容,包括生命周期,可以在setup()中使用生命周期钩子函数。

八.关于$nextTick说法

在组件内使用vm.$nextTick()实例方法特别方便,因为它不需要全局Vue,并且回调函数中的this将自动绑定到当前的Vue实例上

$nextTick()返回一个Promise对象

需要使用$nextTick()原因是Vue是异步渲染

在created等虚拟DOM没有完成挂载的钩子函数中,避免操作DOM报错可以把操作语句放在$nextTick的回调函数中

九.vue指令

v-html指令 使标签内html语法渲染

v-on 指令 事件绑定

v-bind 指令 绑定DOM

v-model 指令 数据的双向绑定

十.关于Vue的描述

当给某个组件修改某个值时,该组件不会立即重新渲染

$nextTick()返回一个Promise对象

$nextTick()可以配合async/await使用

当环境不支持Promise.then、MutationObserver和setImmediate时,Vue使用setTimeout(fn, 0)代替。

上一篇:Win10优化神器,轻松瘦身,释放存储空间!

下一篇:房管局备案贷款审批