响应式处理的入口 - src\core\instance\init.js - initState(vm) vm 状态的初始化 - 初始化了 data、props、methods 等 - src\core\instance\state.js
什么是虚拟 DOM 虚拟 DOM(Virtual DOM) 是使用 JavaScript 对象来描述 DOM,虚拟 DOM 的本质就是 JavaScript 对 象,使用 JavaScript 对象来描述 DOM 的结构。应用的各种状态变化
源码目录结构 Vue 的不同构建版本 - 完整版:同时包含编辑器和运行时的版本 - 编辑器:用来将模板字符串编译称为JavaScript渲染函数的代码,体积大、效率低。 - 运行时:用来创建Vue实例、渲染并处理虚拟DOM等的代码,体积小、
分类 hash - URL中 后面的内容作为路径地址 - hash的模式是基于锚点,以及onhashchange 事件 - 根据当前路由地址找到对应组件重新渲染 history - history 模式是基于html5中的history a
防抖 触发高频事件后n秒内函数只会执行一次,如果n秒内高频事件再次被触发,则重新计算时间。 每次触发事件时都取消之前的延时调用方法 常见使用场景是:用户输入,只有在输入完之后才做校验 示例: 滚动结束后才执行一次 过程: - 设置一
Proxy 定义 Proxy主要用于改变对象属性的默认访问行为,在目标对象之前架设一层"拦截",外界对该属性的访问,都需先通过这一层拦截,因此提供了一层机制,可对外界的访问进行过滤和改写。 用法: Proxy代理的对象属性是外层的,如果
变基的作用就是修改历史,将分支历史并入主线。 常规的项目开发 基于master 分支切一个业务分支 dev。与此同时 dev 提交了两条记录 dev-fix1/dev-fix2, master 分支也提交master-fix1/ma
为什么要关注内存? - 防止页面内存占用过大,导致客户端卡顿,甚至没有响应 - Node使用的也是v8,内存对后端服务的性能至关重要。因为服务的持久性,后端更容易造成内存溢出。 栈空间 栈空间是临时空间,主要存储局部变量和函数调用。 基
requestAnimationFrame requestAnimationFrame函数,如果你希望执行一个动画,并且要求浏览器在下次重绘前执行指定的回调函数来更新动画,该方法需要传一个回调函数作为参数,会在浏览器下次重绘前执行回调函数。
宏任务和微任务 宏任务 指任务队列中的任务,如下: - 整体的script代码(浏览器 和node) - setTimeout (浏览器 和node) - setInterval (浏览器 和node) - setImmediate (no

