最新文章

理解 js 的微任务(microtask)与宏任务(microtask)JavaScript

js 的特点 单线程 执行机制是基于 event loop 所有同步任务再主线程执行,形成执行栈 主线程之外有一个任务队列,只要一步任务有了运行结果,就在任务队列中放置一个事件 一旦执行栈的同步执行完毕,就去读取任务队列,寻找任务队列中放置的异步事件,异步事件结束等待状态,进入执行栈,开始执行 之前有写了一篇文章 js 引擎执行过程:运行机制,语法分析,创建函数调用栈,创建上下文,创建作用域链 ,…

理解 js 的微任务(microtask)与宏任务(microtask)

6/15/20193 分钟阅读470

你想要的 vue 源码分析 · 30Vue 源码

DOM 事件与自定义事件如何用 DOM 事件与自定义事件从编译到生成事件对象的阶段 编译 addHandler 生成代码数据 DOM 事件执行时做了什么 自定义事件都做了什么 父子组件通信的实质 子组件通过父组件传入 listener,去通过$on方式去添加,当$emit 的时候会去执行这个添加的函数。 $emit是往自身派发事件,$emit 是往 vue 实例派发事件,子组件调用$emit 方法…

你想要的 vue 源码分析 · 30

6/13/20199 分钟阅读310

vue-cli3 中使用骨架屏Vue 源码

为什么要使用骨架屏 白屏问题一直是前端的痛点,在使用 vue SPA 中,经常会遇到白屏时间过长导致用户体验的差的情况,如何解决这个问题?大部分同学可能会想到优化 webpack、优化网络请求等。实际上,有一部分用户因为网络问题或其他问题,导致了页面速度加载缓慢,等待时间过长,这部分用户可能还没意识到是自己“硬件”问题,他们期待 2 秒内页面加载完成。显然刚才说的优化方案不是理想方案。 以往的方案…

vue-cli3 中使用骨架屏

6/10/20195 分钟阅读340

transition 与 transition-groupVue

官网 transition 实现页面切换效果 移动端 SPA 中,为了从动画上接近原生,经常会用到页面切换效果,实现的功能如下 header 内容可自定义, , , 都可自定义 header 的 , 在 提前定义,路由页面的参数来源于 router.js 的配置文件。 页面切换动画不需要太多 有若干个父路由,其中有一个父路由下有若干个子路由(假设其他父路由没有子路由),该父路由的某一个子路由作为导…

transition 与 transition-group

5/25/20191 分钟阅读370

js 设计模式-发布订阅模式(观察者模式)JavaScript

如果对 apply 的使用不太自信,可以看这篇文章 apply 、 call 、bind 三者的区别 什么是发布订阅模式(观察者模式) 订阅者可监听发布者发布的消息,一旦发布者有消息发布,那么订阅者就可以接收到消息,当然订阅者也可选择性订阅 发布订阅模式(观察者模式)实现条件 确定发布者 确定缓存列表(用于存储订阅者) 发布消息(接收消息) 最常见的发布订阅模式(观察者模式) dom 监听事件 发…

js 设计模式-发布订阅模式(观察者模式)

5/19/20192 分钟阅读350