1、说说Watch和Computed中修改state?
答:(1)Computed 属性的修改是通过改变其依赖的数据来实现的,因为它们是只读的。
(2)Watch 属性允许你在数据变化时执行任何逻辑,包括修改 state。
2、响应式原理了解过吗?
答:(1)数据劫持
(2)依赖收集
(3)派发更新
3、V-model是一个语法糖吗?如何理解?
答:(1)简述: v-model 作为语法糖,它抽象了数据绑定的复杂性,使得开发者可以用更少的代码实现更强大的功能。
(2)作用:这种设计使得 Vue.js 的数据绑定既简单又强大,是 Vue.js 响应式系统的一个重要组成部分。
4、V-for为什么要加key?
答:(1)提高性能:通过唯一标识符,Vue.js 可以高效地识别和重用元素,减少不必要的 DOM 操作。
(2)确保准确性: key 帮助 Vue.js 精确地追踪每个节点的身份,从而在数据更新时做出正确的 DOM 元素复用或重新渲染决策。
(3)维护状态:对于列表中的组件, key 确保组件的状态与特定项绑定,避免因重排序或重新渲染而导致的状态混乱。
5、路由的两种模式是什么?hash路由/#/后地址变了是怎么监听的?
答:(1)Hash 模式:URL 的改变通过 # 符号后面的部分(即 hash 部分)来实现。这种方式不需要服务器的支持,因为 # 后面的部分不会被当作请求的一部分发送到服务器。
(2)History 模式:利用 HTML5 的 History API,允许你使用普通的路径(如 /about ),而不是带 # 的路径。这种方式可以提供更干净的 URL,但它需要服务器配置支持,以确保对所有路径都返回 index.html 文件。
(3)监听机制:在 Hash 模式下,当 URL 的 hash 部分发生变化时,浏览器会触发 hashchange 事件。前端路由库(如 Vue Router 或 React Router)会监听这个事件,并根据 hash 的值来更新页面内容,而不需要重新加载页面。
6、移动端适配的vmin和vmax用过吗?
答:(1) vmin :视口宽度和高度中较小的那个的百分比。当视口的宽度小于高度时, 1vmin 等于 1vw ;反之,则等于 1vh 。7
(2)vmax :视口宽度和高度中较大的那个的百分比。当视口的宽度大于高度时, 1vmax 等于 1vw ;反之,则等于 1vh 。
7、Vue的编译过程了解过吗?
答:(1)简介:将 Vue 模板(template)转换成最终的渲染函数的过程,主要发生在 Vue 组件的初始化阶段。
(2)Vue 2.x的编译过程:解析(Parsing)、优化(Optimization)、代码生成(Code Generation)、渲染函数(Render Function)
(3)Vue 3.x的编译过程:与vue2类似,但引入了新的编译器架构,使用了手写编译器替代了之前基于 babel 的编译器。Vue 3 的编译器在性能上进行了优化,并且支持更多的编译时特性。
8、数组扁平化有什么思路?
答:(1)简介:将多层嵌套的数组转换为单层数组的过程。
(2)实现思路:递归、Array.prototype.flat() 方法、堆栈、队列、展开运算符、第三方库
9、你平时喜欢看什么书?
10、你对创业公司怎么看?