Typescript实战 | 如何快速搭建 TypeScript 学习开发环境?
蛋烘糕
“工欲善其事,必先利其器。”因此,在正式讲解 TypeScript 之前,我们有必要先掌握 TypeScript 开发环境的搭建及相关注意事项。
深入浅出React | JSX 代码是如何“摇身一变”成为 DOM 的?
蛋烘糕
时下虽然接入 JSX 语法的框架越来越多,但与之缘分最深的毫无疑问仍然是 React
React diff 算法
蛋烘糕
diff 算法一直是 React 系统最核心的部分,并且由于演化自传统 diff,使得比较方式从 O(n^3)降级到 O(n),然后又改成了链表方式,可谓是变化万千。
Vue3.0 核心源码解读 | Vue Router:如何实现一个前端路由?(下)
蛋烘糕
上一篇我们熟悉了 Vue Router 的基本用法,并且开始探究它的实现原理,今天我们继续未完的原理,一起来看路径是如何和路由组件映射的。
Vue3.0 核心源码解读 | Vue Router:如何实现一个前端路由?(上)
蛋烘糕
相信对有一定基础的前端开发工程师来说,路由并不陌生,它最初源于服务端,在服务端中路由描述的是 URL 与处理函数之间的映射关系。而在 Web 前端单页应用 SPA 中,路由描述的是 URL 与视图之间的映射关系,这种映射是单向的,即 URL 变化会引起视图的更新。
Vue3.0 核心源码解读 | Transition 组件:过渡动画的实现原理是怎样的?(下)
蛋烘糕
上一篇,我们已经知道了,Vue.js 提供了内置的 Transition 组件帮我们实现动画过渡效果。在之前的分析中我把 Transition 组件的实现分成了三个部分:组件的渲染、钩子函数的执行、模式的应用。本篇我们从钩子函数的执行继续探究 Transition 组件的实现原理。
Vue3.0 核心源码解读 | Transition 组件:过渡动画的实现原理是怎样的?(上)
蛋烘糕
作为一名前端开发工程师,平时开发页面少不了要写一些过渡动画,通常可以用 CSS 脚本来实现,当然一些时候也会使用 JavaScript 操作 DOM 来实现动画。那么,如果我们使用 Vue.js 技术栈,有没有好的实现动画的方式呢?
Vue3.0 核心源码解读 | KeepAlive 组件:如何让组件在内存中缓存和调度?
蛋烘糕
通过前面内容的学习,我们了解到多个平行组件条件渲染,当满足条件的时候会触发某个组件的挂载,而已渲染的组件当条件不满足的时候会触发组件的卸载,举个例子
Vue3.0 核心源码解读 | Teleport 组件:如何脱离当前组件渲染子组件?
蛋烘糕
我们都知道,Vue.js 的核心思想之一是组件化,组件就是 DOM 的映射,我们通过嵌套的组件构成了一个组件应用程序的树。但是,有些时候组件模板的一部分在逻辑上属于该组件,而从技术角度来看,最好将模板的这一部分移动到应用程序之外的其他位置。
Vue3.0 核心源码解读 | v-model:双向绑定到底是怎么实现的?
蛋烘糕
很多人学习 Vue.js,会把 Vue.js 的响应式原理误解为双向绑定。其实响应式原理是一种单向行为,它是数据到 DOM 的映射。而真正的双向绑定,除了数据变化,会引起 DOM 的变化之外,还应该在操作 DOM 改变后,反过来影响数据的变化。
Vue3.0 核心源码解读 | 指令:指令完整的生命周期是怎样的?
蛋烘糕
我们知道 Vue.js 的核心思想之一是数据驱动,数据是 DOM 的映射。在大部分情况下,你是不用操作 DOM 的,但是这并不意味着你不能操作 DOM。
Vue3.0 核心源码解读 | 插槽:如何实现内容分发?
蛋烘糕
Vue.js 受到 Web Component 草案的启发,通过插槽的方式实现内容分发,它允许我们在父组件中编写 DOM 并在子组件渲染时把 DOM 添加到子组件的插槽中,使用起来非常方便。