Vue 基础面试题共73篇

Vue 是用于构建用户界面的渐进式 JavaScript 框架。Vue 基础面试题的考察重点包括 Vue 的双向数据绑定、模板语法、Vue 实例与生命周期钩子、组件之间的通信(props 和 $emit)、条件与循环渲染、事件处理、计算属性与侦听器的使用、以及 Vue 的指令系统。

面试题:Vue 使用 v-for 遍历对象时,是按什么顺序遍历的?如何保证遍历顺序?

在 Vue 中使用 v-for 遍历对象时,其遍历顺序取决于 JavaScript 引擎对对象属性的枚举顺序,而这个顺序在 ES2015 (ES6) 之后是有明确规范的。 v-for 遍历对象的顺序 当你使用 v-for 遍历一个对...
程序百科的头像-程序百科程序百科17天前
3613

面试题:Vue 中怎么获取 DOM 节点?

在 Vue 中,获取 DOM 节点是通过 ref 特性来实现的。直接操作 DOM 不是 Vue 推荐的首选方式(Vue 提倡声明式渲染和数据驱动),但在某些特定场景下(如触发焦点、测量元素尺寸、集成第三方库等...
程序百科的头像-程序百科程序百科18天前
4711

面试题:如何重置 Vue 的 data?

在 Vue 中,“重置 data”通常指的是将组件实例的数据恢复到其初始状态(即组件创建时 data 函数返回的对象)。有几种常用的方法来实现这一目标。 方法一:调用 data() 函数并合并(推荐) 这是...
程序百科的头像-程序百科程序百科18天前
2312

面试题:如何访问 Vue 子组件的实例或子元素?

在 Vue 中,有时需要从父组件直接访问子组件的实例或其内部的 DOM 元素。Vue 提供了 ref 特性来实现这一需求。 核心方法:使用 ref 在子组件或元素上定义 ref:在父组件的模板中,为要访问的子...
程序百科的头像-程序百科程序百科18天前
2110

面试题:Vue Router 的跳转和 location.href 有什么区别?

Vue Router 的编程式导航(如 router.push)和原生的 location.href 都能实现页面跳转,但它们在工作原理、用户体验和应用状态上有本质区别。 核心区别 特性Vue Router (router.push)location.h...
程序百科的头像-程序百科程序百科18天前
2513

面试题:在 Vue 事件中传入 $event,使用 e.target 和 e.currentTarget 有什么区别?

在 Vue 的事件处理中,e.target 和 e.currentTarget 都是原生 DOM 事件对象的属性,它们都指向 DOM 元素,但代表的含义完全不同。理解它们的区别对于正确处理事件委托和事件冒泡至关重要。 核心...
程序百科的头像-程序百科程序百科18天前
4110

面试题:为什么 Vue 的 data 属性必须声明为返回一个初始数据的函数?

这是一个非常经典的 Vue 面试题,核心原因在于 JavaScript 的对象引用机制和 组件复用的需求。 问题核心:组件是可复用的 在 Vue 中,组件(Component)是一个可复用的实例。我们可以在一个应用...
程序百科的头像-程序百科程序百科18天前
297

面试题:什么是 Vue 指令?Vue 有哪些常用的指令?

什么是 Vue 指令? Vue 指令(Directives)是 Vue 框架提供的一种特殊的自定义 HTML 属性,它们以 v- 为前缀(例如 v-if, v-model)。指令的作用是当其表达式的值发生变化时,响应式地将某些行...
程序百科的头像-程序百科程序百科18天前
485

面试题:Vue 在 created 和 mounted 这两个生命周期钩子中请求数据有什么区别?

在 Vue 中,created 和 mounted 都是常用的生命周期钩子,都可以用来发起数据请求,但它们在执行时机和适用场景上存在关键区别。 1. 执行时机 created 钩子: 在实例创建完成后立即调用。 此时...
程序百科的头像-程序百科程序百科18天前
386

面试题:Vue Router 中 route 和 router 有哪些区别?

在 Vue Router 中,router 和 route 是两个核心但极易混淆的概念。它们的区别如下: 1. 核心定义 router (路由器实例): 你可以把它理解为整个导航系统的“控制器”或“管理者”。 它是一个通过...
程序百科的头像-程序百科程序百科18天前
506