0%

背景

公司有统一的微信公众号登录服务,需要给前端封装此功能,以便各项目使用。由于公司移动端项目采用的 Vue 技术栈,所以决定将微信公众号登录的功能以 Vue 插件的形式提供出去。
将开发过程中一些值得记录的点记下来,此功能实现的代码很简单,就不放出来了。
假设该插件的名字是 vue-wx-login。

Read more »

本系列为极客时间上的《浏览器工作原理与实践》专栏的学习笔记

消息队列和事件循环

每个渲染进程都会有一个主线程,用来处理各种任务:解析 DOM、执行 JavaScript、响应用户的交互事件、执行动画等。如果要有序的处理这些任务,就必须有一个专门的调度系统来协调,在浏览器中,这个调度系统就是消息队列和事件循环。

Read more »

本系列为极客时间上的《浏览器工作原理与实践》专栏的学习笔记

数据存储

JavaScript 的数据类型分为两大类:原始类型和引用类型,他们在内存中的存储位置是不一样的。内存空间分为三类:代码空间、栈空间和堆空间。代码空间,顾名思义就是存储执行代码的地方。剩下的栈空间和堆空间就是用来存储我们程序中的数据的,比如我们定义的各种类型的变量以及生产出来的数据。

Read more »

说来惭愧,博客搭建起来之后,一直都没有认真的好好总结自己的技术学习,没有沉淀,博客上只有寥寥三篇文章。那三篇文章都好像是在嘲笑我的懒惰。

今天将自己 2018 年剩下的时间里好好总结了一下,希望自己不要再浑浑噩噩,按照自己的计划认真执行。

Read more »

1. 部署环境

我是在阿里云上买的专有网络的云服务器,配置是:CPU 1 核,内存 1GB,操作系统 CentOS 7.3 64 位,带宽 1Mbps。配置很低,因为便宜嘛,平时自己的一些小 demo 够了。以下的部署步骤基于此环境。

之前部署过几次,都是在网络上东找找西找找的配置文章,本身对于服务器相关的知识一窍不通,因此配置完了也就忘了。最近刚在这台新服务器上部署了 Node 的运行环境,借此记录下步骤,以便日后查找,也给有需要的朋友一些参考价值。

Read more »

1.简介

在 web 开发中,经常会对一些事件进行监听处理,从而达到我们需要的一些效果。但是某些事件触发特别频繁,如浏览器窗口的 resize 事件以及页面的滚动事件。如此频繁的事件监听以及处理函数的多次执行,势必会带来性能上不必要的损失和欠佳的用户体验。

因此,今天就初探一下类似问题的解决办法:防抖动(Debounce )、节流阀(Throttle)和 requestAnimationFrame。

Read more »