2022-07-13发表2022-08-29更新javascript / vue1 分钟读完 (大约119个字)vue的路由实现原理vue 中的路由模式有两种: history 和 hash hash阅读更多
2022-07-08发表2022-07-11更新javascript / vue17 分钟读完 (大约2476个字)响应系统的作用与实现-2回顾上篇文章 响应系统的作用与实现-1,完成的代码: 12345678910111213141516171819202122232425262728293031323334353637383940function track(target, key) { let depsMap = bucket.get(target); if (!depsMap) { bucket.set(target, (depsMap = new Map())); } let effectFns = depsMap.get(key); if (!effectFns) { depsMap.set(key, (effectFns = new Set())); } effectFns.add(activeEffect);}function trigger(target, key) { const depsMap = bucket.get(target); if (depsMap) { const effectFns = depsMap.get(key); effectFns && effectFns.forEach((fn) => fn()); }}let activeEffect = null;const bucket = new WeakMap();function effect(fn) { activeEffect = fn; fn();}const proxy = new Proxy(obj, { get(target, key) { if (!activeEffect) { return target[key]; } track(target, key); return target[key]; }, set(target, key, newValue) { target[key] = newValue; trigger(target, key); return true; },});阅读更多
2022-07-07发表2022-07-10更新javascript / vue16 分钟读完 (大约2452个字)响应系统的作用与实现-1我们都知道,vue3.x 是采用 Proxy 实现响应数据的,本篇文章也将围绕 vue3.x 的响应机制开始,展开对响应式数据和副作用函数的实现 副作用函数阅读更多
2022-05-04发表2022-09-16更新javascript / vue11 分钟读完 (大约1671个字)vuev-if 和 v-for 的优先级源码: compiler/codegen/index.js阅读更多