上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 23 下一页
摘要: 什么是数据劫持? 定义: 数据劫持,指的是在访问或者修改对象的某个属性时,通过一段代码拦截这个行为,进行额外的操作或者修改返回结果。 简单地说,就是当我们 触发函数的时候 动一些手脚做点我们自己想做的事情,也就是所谓的 "劫持"操作 数据劫持的两种方案: Object.defineProperty 阅读全文
posted @ 2022-12-15 08:10 bb_xiaxia1998 阅读(329) 评论(0) 推荐(0)
摘要: 虚拟DOM的优劣如何? 优点: 保证性能下限: 虚拟DOM可以经过diff找出最小差异,然后批量进行patch,这种操作虽然比不上手动优化,但是比起粗暴的DOM操作性能要好很多,因此虚拟DOM可以保证性能下限 无需手动操作DOM: 虚拟DOM的diff和patch都是在一次更新中自动进行的,我们无需 阅读全文
posted @ 2022-12-15 08:10 bb_xiaxia1998 阅读(82) 评论(0) 推荐(0)
摘要: 最近面试总是会被问到这么一个问题:在使用vue的时候,将for循环中声明的变量i从1增加到100,然后将i展示到页面上,页面上的i是从1跳到100,还是会怎样?答案当然是只会显示100,并不会有跳转的过程。 怎么可以让页面上有从1到100显示的过程呢,就是用setTimeout或者Promise.t 阅读全文
posted @ 2022-12-15 08:09 bb_xiaxia1998 阅读(28) 评论(0) 推荐(0)
摘要: Vue生命周期钩子是如何实现的 vue的生命周期钩子就是回调函数而已,当创建组件实例的过程中会调用对应的钩子方法 内部会对钩子函数进行处理,将钩子函数维护成数组的形式 Vue 的生命周期钩子核心实现是利用发布订阅模式先把用户传入的的生命周期钩子订阅好(内部采用数组的方式存储)然后在创建组件实例的过程 阅读全文
posted @ 2022-12-14 10:39 bb_xiaxia1998 阅读(87) 评论(0) 推荐(0)
摘要: 背景 看了一些自定义指令的文章,但是探究其原理的文章却不多见,所以我决定水一篇。 如何自定义指令? 其实关于这个问题官方文档上已经有了很好的示例的,我们先来温故一下。 除了核心功能默认内置的指令 (v-model 和 v-show),Vue 也允许注册自定义指令。注意,在 Vue2.0 中,代码复用 阅读全文
posted @ 2022-12-14 10:38 bb_xiaxia1998 阅读(48) 评论(0) 推荐(1)
摘要: MVVM的优缺点? 优点: 分离视图(View)和模型(Model),降低代码耦合,提⾼视图或者逻辑的重⽤性: ⽐如视图(View)可以独⽴于Model变化和修改,⼀个ViewModel可以绑定不同的"View"上,当View变化的时候Model不可以不变,当Model变化的时候View也可以不变。 阅读全文
posted @ 2022-12-14 10:37 bb_xiaxia1998 阅读(199) 评论(0) 推荐(0)
摘要: 写在前面 在前端中,主要涉及的基本上就是 DOM的相关操作 和 JS,我们都知道 DOM 操作是比较耗时的,那么在我们写前端相关代码的时候,如何减少不必要的 DOM 操作便成了前端优化的重要内容。 虚拟DOM(virtual DOM) 在 jQuery 时代,基本上所有的 DOM 相关的操作都是由我 阅读全文
posted @ 2022-12-14 10:37 bb_xiaxia1998 阅读(14) 评论(0) 推荐(0)
摘要: Watch中的deep:true是如何实现的 当用户指定了 watch 中的deep属性为 true 时,如果当前监控的值是数组类型。会对对象中的每一项进行求值,此时会将当前 watcher存入到对应属性的依赖中,这样数组中对象发生变化时也会通知数据更新 源码相关 get () { pushTarg 阅读全文
posted @ 2022-12-12 10:20 bb_xiaxia1998 阅读(160) 评论(0) 推荐(0)
摘要: 一、简介 vue几个核心思想: 数据驱动 组件化 虚拟dom、diff局部最优更新 源码目录介绍 Vue.js 的源码在 src 目录下,其目录结构如下。 src ├── compiler # 编译相关 ├── core # 核心代码 ├── platforms # 不同平台的支持 ├── serv 阅读全文
posted @ 2022-12-12 10:20 bb_xiaxia1998 阅读(43) 评论(0) 推荐(0)
摘要: 我们在开发Vue项目时候都知道,在vue开发中某些问题如果前期忽略掉,当时不会出现明显的效果,但是越向后开发越难做,而且项目做久了就会出现问题,这就是所说的蝴蝶效应,这样后期的维护成本会非常高,并且项目上线后还会影响用户体验,也会出现加载慢等一系列的性能问题,下面举一个简单的例子。 举个简单的例子 阅读全文
posted @ 2022-12-12 10:19 bb_xiaxia1998 阅读(25) 评论(0) 推荐(1)
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 23 下一页