vue小实训第二周面试题

本文详述了Vue.js的面试重点,包括Vuex的理解和使用,Vue的基础概念,如渐进式特性、双向绑定原理,以及组件、路由、状态管理和生命周期等方面的知识。还探讨了v-if与v-show的区别,以及Vue中的数据绑定、事件处理和模块化等核心概念。
摘要由CSDN通过智能技术生成

1.说说你对vuex的理解,vuex是什么?怎么使用?哪种功能场景使用它?

vuex是什么

vuex是一个专门为vue.js应用程设计开发的状态管理,(它采用集中式存贮管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化)。

怎么使用?

方法一: 在mian.js中引入store。用来读取状态的集中存放在store中,改变状态方法的方式是提交mutations,这是一个同步事物,异步逻辑应该封装在actions中。

方法二:vuex 就是一个仓库,仓库里放了很多对象。
其中 state 存放的是数据状态,不可以直接修改里面的数据。
getters类似vue的计算属性,主要用来过滤一些数据。
mutations:存放的是动态修改Vuex的state中保存的数据状态的方法。
actions:保存的触发mutations中方法的方法,可以理解为通过将mutations里面处里数据的方法变成可异步的处理数据的方法,简单的说就是异步操作数据。

一般什么样的数据会放在 State 中呢?

目前主要有两种数据会使用 vuex 进行管理:
1、组件之间全局共享的数据
2、通过后端异步请求的数据 比如做加入购物车、登录状态等都可以使用Vuex来管理数据状态

使用场景有

单页应用中,组件之间的状态、音乐播放、登录状态、加入购物车

说说你对vue的理解

Vue 是什么 ?

主流的渐进式 JavaScript 框架

是一套用于构建用户界面的渐进式 javascript 框架(渐进式:想用什么就用什么不必全都用)
在传统的前端开发中,是基于 jQuery+ 模板引擎 来构建界面的

搭建用户页面的渐进式框架

什么是渐进式?

可以和传统的网站开发架构融合在一起,例如可以简单的把它当作一个类似 JQuery 库来使用。
也可以使用Vue全家桶框架来开发大型的单页面应用程序 。

使用它的原因 ?

vue.js 体积小,
编码简洁优雅,
运行效率高,
用户体验好.无Dom操作,
它能提高网站应用程序的开发效率

什么场景下使用它?

一般是需要开发单页面应用程序 (Single Page Application, 简称:SPA) 的时候去用 单页面应用程序,如:网易云音乐 https://music.163.com/ 因为Vue 是 渐进式 的,Vue
其实可以融入到不同的项目中,即插即用

面试官:说一下VUE双向绑定的原理?

答:VUE实现双向数据绑定的原理就是利用了 Object.defineProperty()
这个方法重新定义了对象获取属性值(get)和设置属性值(set)的操作来实现的。(大家可以自己手写下,加深自己的理解~)

vue.js 则是采用数据劫持结合发布者-订阅者模式的方式,通过Object.defineProperty()来劫持各个属性的setter,getter,在数据变动时发布消息给订阅者,触发相应的监听回调。

.Vue的v-model双向绑定原理?

v-model本质就是一个语法糖,可以看成是value + input方法的语法糖。 可以通过model属性的prop和event属性来进行自定义。原生的v-model,会根据标签的不同生成不同的事件和属性

text 和 textarea 元素使用 value 属性和 input 事件

checkbox 和 radio 使用 checked 属性和 change 事件

select 字段将 value 作为 prop 并将 change 作为事件

可以将v-model进行如下改写:

<input v-model="sth" />
//  等同于
<input :value="sth" @input="sth = $event.target.value"
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值