摘要:
[TOC] 简单介绍 我们会从简单的模块载入原理来开始,尝试阅读下 Node.js 源代码。首先我们知道 Node.js 的源代码主要是由 C++ 和 JavaScript 编写的,JS 部分主要在 lib 目录下,而 C++ 部分主要在 src 目录下。 模块加载主要是分四种类型的模块: 1. C 阅读全文
摘要:
背景: 时报错没有权限 1.查看目录的所有者 发现 node_module 是在 root 下的,于是把他转到自己下面 2.看看当前是谁 是 anna,不是 root,于是换一下 3.换下目录所有者(注意换下用户名 anna) `sudo chown R anna: /usr/local/lib/n 阅读全文
摘要:
class class 并不是一种新的数据结构,只是在函数原型基础上的语法糖 转为 js extends 派生类 派生类包含了一个构造函数,它 必须调用 ,它会执行基类的构造函数。 而且,在构造函数里访问 this 的属性之前,我们 一定要调用 。 这个是TypeScript强制执行的一条重要规则。 阅读全文
摘要:
缓存的几个位置 from disk cache: 从硬盘中读取缓存 from memory cache: 从内存冲读取缓存 两种都只能读取一些派生类文件,比如 html 中引入的一些外部资源 浏览器缓存的判断方法 简单来说有这三种方式: 完整了解如下图: 参考文章:https://juejin.im 阅读全文
摘要:
使用 vim 的时候,经常会有同时注释或解开注释的情况,逐行编辑很浪费时间,下面的同时操作多行的方式 删除操作 进入 visual block 模式 选中要删除几行文字 删除 插入操作 进入 visual block 模式 选中要插入的几行文字,光标停留在最后一行 输入 大写,进入编辑模式 输入要插 阅读全文
摘要:
1. 使用 gzip 压缩打包后的 js 文件 这个方法优化浏览器下载时的文件大小(打包后的文件大小没有改变) webpack.config.prod.js 中 这样打包出的 css js,会有 css.gz js.gz,即压缩过的 js 和 css。 之后在服务器端的 nginx 配置中开启 gz 阅读全文
摘要:
"VirtualBox " 是开源的虚拟机软件,常用的虚拟机软件还有 VMware / Hyper V / Paralles Desktop 。 modern.ie 是微软官方提供的用于测试网页在各版本 IE 浏览器效果的虚拟机镜像。注意不是 ISO 光盘镜像,不能直接用于真机的安装,只能在虚拟机软 阅读全文
摘要:
react 是 view 层的一个框架,负责展示数据;redux 控制数据流动,把数据存在唯一的 store 里,通过 action 来触发事件,reducer 来根据事件处理数据。 redux 在通过 reducer 变更完 store tree 后就止步了,它并不能将每次变更之后的 state 阅读全文
摘要:
Redux 可以控制数据流动,和 React,Angular,Vue 等框架配合,清晰的管理数据流。 Redux 由三部分组成:store,action,reducer 数据流动的例子:onClick dispatch 一个 action 根据 action type 执行 reducer 更新 s 阅读全文
摘要:
Charles 是 Mac 下常用的抓包工具,它通过将自己设置成系统的代理服务器,从而完成了抓包的工作。 同类的工具还有 fiddler 和 Wireshark,其中 fiddler 是微软公司使用 .NET 开发的工具,适用于 Windows 操作系统,虽然通过 mono 框架使其可以在 Mac 阅读全文