所有文章

  • Published on
    vite是通过使用[ES Module](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules)来实现开发环境秒开,快速HMR的。这个ES Module说白了我们前端开发者应该每天都在用,因为我们都在用import,export来导入导出模块。不过如果你还是用的CommonJS的require,那就不是ES Module。
  • Published on
    今天在项目中遇到一个bug,账单打开的时候会报错,经过初步分析,发现是一个请求里面带的参数不够,参数是从URL获取的,进一步分析发现,这些错误的页面的URL不全。
  • Published on
    之前一直用的GitHub Pages,也还行,就是太简单了,没地方折腾,也就显得很无趣,比如我想搞下HTTPS,我想搞下HTTP/2,通通搞不了。所以我就折腾了我现在的博客,买的阿里云的ECS,nginx的网关,配套一个博客和一个Next.js开发的介绍ECMAScript知识点的系列文章。
  • Published on
    最近打算看一下WebPack的源代码,遇到的第一个我觉得需要详细看下的不太复杂的点(相比于整个WebPack的代码)就是[Tapable](https://github.com/webpack/tapable)。因为稍微看下WebPack的代码的话就会发现到处都是hooks,这些hooks就是用的这个Tapable。
  • Published on
    之前想要花时间移植一款游戏,叫Elona,游戏是通过HSP写的,反编译的话可以看到一些HSP的源代码,也有一些反编译之后的一些资料。我花时间搞过一段时间,后来听说竟然有公司在做这件事!然后我就暂停了我自己的开发工作。
  • Published on
    最近要准备一个关于HTTP/2协议的分享,所以就特意动手折腾了一下HTTP/2有关的东西。纸上得来终觉浅,绝知此事要躬行。只看别人写的文章,哪怕是看的[HTTP 2 RFC](https://httpwg.org/specs/rfc7540.html),也不如亲自动手折腾一下。第一步,用Wireshark来抓包,[下载地址](https://www.wireshark.org/download.html)。下载安装好之后,默认情况下Wireshark是无法解密HTTP/2的请求的,原因是目前的HTTP/2都是基于TLS的安全协议,Wireshark是无法解密的。
  • Published on
    最近有个项目是用的Python的Flask做的后台,前端是React和Ant Design,然后前端打包出来的文件比较大,有两三兆,申请的服务器比较慢,带宽只有2Mb/s。所以初次打开网站会比较慢,有时候需要十几秒。那有两种思路,一种就是增加带宽,当然这样的话费用也就上去了。另一种思路就是开启gzip压缩,因为这些都是文本文件,开启gzip的话,可以极大地提升加载速度。这让我想起来之前遇到的百度的一个网页,有个文件是6MB还是多少,竟然没开gzip,当网络慢的时候,那个网页基本打不开。令人吐槽。