React 中的一些封装

结合资料以及一直以来的开发情况,总结记录一下 React 中的封装方式,具体是以下三种:

  • HOC
  • Render Props
  • React Hooks

我的 Mac 应用

记一下自用的简易 Mac 应用清单:

函数提升 & 有条件地创建函数

本文始于这样一道 JavaScript 题目。

var a;
if (true) {
  a = 5;
  function a() {}
  a = 2;
  console.log(a);
}
console.log(a);

JavaScript 中的面向对象

在 JavaScript 中没有类的概念,因此它的对象与基于类的语言中的对象不同。

ECMA-262 把对象定义为:无序属性的集合,其属性可以包含基本值、对象或函数。

一直以来在编程中都是使用 classextends 关键字,而这实际上是 ES6 中添加的语法糖。在熟练使用语法糖的同时,有必要了解其背后的原生实现。

JavaScript 原型相关

一直以来没有系统地去学习过原型相关的知识概念,虽然平时直接使用不多,但时常会看到,有必要搞明白一点。

TS transformer 的使用

TS transformer 简单来讲就像babel 插件一样,只不过作用于 TypeScript 的编译过程。

与 babel 插件不同的是,配置 transformer 的时候会有 beforeafterafterDeclarations 这三种选项,如果不清楚他们之前的区别的话,使用的时候会充满困惑。

本文只关注 transformer 的使用,对应的 demo 仓库:https://github.com/daief/usage-of-ts-transformer

自定义 webpack loader 来实现简单的站点生成器

本篇内容实际上在公司内部分享时有过讲解,通过编写一个自定义的 webpack loader,实现方便快速地构建一个文档类型的网站。现在重新实现了一下,并将这个部分的内容与 jugg 进行了结合,故自己再次整理一遍。

我的 2019

距离 2019 结束只有不到三天,好好写完这份总结应该是今年最后一件事了。

编译 Vue 单文件组件至 JS 文件

在开发 Vue 的组件库时,该如何将 vue 文件转换为 commonjs 或是 ES Module 规范的 js 文件,最后提供给他方使用?

在这样的场景下,展开标题内容的研究与实践。

也许有用的 Web 调试技能

记录那些年,我们都在用的调试方法。第一部分主要是一些 Chrome 开发者工具的使用记录;剩余部分是一些其他的调试手段,包括移动端调试、代理内容的介绍。了解 Chrome 开发者的同学,可以跳过第一部分。

谷歌娘