前言 Vue3.0是采用数据劫持结合发布者-订阅者模式的方式,通过new Proxy()来劫持各个属性的setter,getter,在数据变动时发布消息给订阅者,触发相应的监听回调。Vue3.0与Vue2.0的区别仅是数据劫持的方式由Ob...
Nodejs框架Koa常用的一些中间件
koa 是由 Express 原班人马打造的,致力于成为一个更小、更富有表现力、更健壮的 Web 框架。使用 koa 编写 web 应用,通过组合不同的 generator,可以免除重复繁琐的回调函数嵌套,并极大地提升错误处理的效率。...
微信小程序的底层架构实现的原理
前言 使用微信小程序开发已经很长时间了,对小程序开发已经相当熟练了;但是作为一名对技术有追求的前端开发,仅仅熟练掌握小程序的开发感觉还是不够的,我们应该更进一步的去理解其背后实现的原理以及对应的...
React 中 setState() 更新机制和源码解读
对于 setState() 相信伙伴们都用过,它是 React 官方推荐用来更新组件 state 的 API,但是对于 setState() 你真的了解吗?在网上看了很多关于this.setState()的介绍,觉得受益匪浅,就总结了一些帮助自己理解的...
Node.js 事件循环(Event Loop)机制解析
前言 事件驱动、异步、单线程、非阻塞I/O,这是我们听得最多的关于nodejs的介绍。看到这些关键字,可能我们会好奇:"nodejs既然是单线程,那是怎么实现异步非阻塞的?" 这全都依赖于nodejs有一个非常强大的机...
Webpack 构建速度的优化
一、使用高版本的 Webpack 和 Node.js 1、webpack 5.x 主要带来了哪些新特性: 更快的构建速度 缓慢的构建一直是开发人员对Webpack抱怨点之一。现在,模块打包提供了一个可选的文件系统缓存。通过设置...
Git 常用命令清单
Git简介 2005年,Linus花了两周时间自己用C语言写了一个分布式版本控制系统Git。Git是分布式版本控制系统(DVCS),分布式的版本控制系统会把代码仓库完整的镜像下来,这样任何一个服务器发生故障都可以用其他...
HTTP1.0、HTTP1.1、HTTP2.0和HTTP3.0的特点及其区别
前言 本文将从HTTP不断发展的时间线来讲解与其相关的知识点,其中包括HTTP1.0,HTTP1.1,HTTP2.0,QUIC,HTTP3.0等,文章中内容涉及面较广,不会特别深入某个知识点来延伸,希望各位读者都能有所收获。 HT...
JavaScript 事件循环机制(Event Loop)
前言 Javascript 是一门 单线程语言,即同一时间只能执行一个任务,即代码执行是同步并且阻塞的。当一个任务在执行时,其他任务都要排队等待。但只能同步执行肯定是不行的,所以有了来实现异步的函数, Event...
React Hooks 介绍、原理和API使用场景
概念 React Hook 是 React 16.8 的新增特性。它可以让你在不编写 class 的情况下使用 state 以及其他的 React 特性;以前在编写函数式组件,组件需要自己的 state 的时候,通常我们会转化成 class 组件来做。...