【vue面试宝典】带你玩转vue

参赛话题:

谈谈你对Vue的理解

1.它是一个渐进式JavaScript框架 2.核心库加插件 3.动态创建用户界面 4.使用MVVM模式 5.代码简洁 体积小 能够提高运行效率 6.适合PC端和移动端的开发 7.可以轻松引入vue插件以及其他第三方库进行开发

vue和react的区别

1.核心思想不同组件写法差异 Vue早期开发就尤雨溪大佬,所以定位就是尽可能的降低前端开发的门槛,让更多的人能够更快地上手开发。这就有了vue的主要特点:灵活易用的渐进式框架,进行数据拦截/代理,它对侦测数据的变化更敏感、更精确。 2.组件写法差异 React推荐的做法是JSX + inline style, 也就是把 HTML 和 CSS 全都写进 JavaScript 中,即 all in js; Vue 推荐的做法是 template 的单文件组件格式(简单易懂,从传统前端转过来易于理解),即 html,css,JS 写在同一个文件(vue也支持JSX写法)

这个差异一定程度上也是由于二者核心思想不同而导致的。

computed 和 watch 有什么区别?

计算属性 computed: 支持缓存,只有依赖数据发生变化时,才会重新进行计算函数; 计算属性内不支持异步操作; 计算属性的函数中都有一个 get(默认具有,获取计算属性)和 set(手动添加,设置计算属性)方法; 计算属性是自动监听依赖值的变化,从而动态返回内容。 侦听属性 watch: 不支持缓存,只要数据发生变化,就会执行侦听函数; 侦听属性内支持异步操作; 侦听属性的值可以是一个对象,接收 handler 回调,deep,immediate 三个属性; 监听是一个过程,在监听的值变化时,可以触发一个回调,并做一些其他事情。 computed 是计算属性,它会根据你所依赖的数据动态显示新的计算结果 watch 一个对象,键是 data 对应的数据,值是对应的回调函数。值也可以是方法名,或者包含选项的对象,当 data 的数据发生变化时,就会发生一个回调,他有两个参数,一个 val (修改后的 data 数据),一个 oldVal(原来的 data 数据) Vue 实例将会在实例化时调用$watch(),遍历 watch 对象的每一个属性 区别: 1、计算属性在调用时需要在模板中渲染,修改计算所依赖元数据;watch在调用时只需修改元数据。 2、计算属性默认深度依赖,watch默认浅度观测。 3、计算属性适合做筛选,不可异步;watch适合做执行异步或开销较大的操作。

vuex的五个属性都有什么

state:vuex的基本数据,用来存储变量

getter:从基本数据(state)派生的数据,相当于state的计算属性

mutation:提交更新数据的方法,必须是同步的(如果需要异步使用action)。每个 mutation 都有一个字符串的 事件类型 (type) 和 一个 回调函数 (handler)。 回调函数就是我们实际进行状态更改的地方,并且它会接受 state 作为第一个参数,提交载荷作为第二个参数。

action:和mutation的功能大致相同,不同之处在于 ==》1. Action 提交的是 mutation,而不是直接变更状态。 2. Action 可以包含任意异步操作。

modules:模块化vuex,可以让每一个模块拥有自己的state、mutation、action、getters,使得结构非常清晰,方便管理。

经验分享 程序员 微信小程序 职场和发展