Skip to main content

21 posts

Latest articles

  1. Apr 2, 20232 min read5.3K views

    使用 clash docker 做透明网关

    之前一直使用 OpenWrt 旁路由的方式来翻墙,但 OpenWrt 本身不够稳定,并且我长期处于只使用 OpenWrt 其中的一个插件的状态,所以决定开一台虚拟机来体验下使用 Clash 作为透明网关 先给出(从同事那借来的)配置: version: "3" services: # Enable ip_forward - https://askubuntu.com/a/311054 # For Ubuntu Server, you also need to disable syste...

  2. Dec 13, 20191 min read203 views

    Run js until css transition completed

    写代码的时候我们可能会经常碰到需要在某个元素的动画完成后再执行某些代码的场景,这时,我们就需要用到 transitionend 事件。 使用的方法也相当简单: const listener = () => { // do something... } document.querySelector('#menu').addEventListener('transitionend', listener) 需要注意的两点: 如果 transition 是针对多个属性的,则该事件会被触发多...

  3. Dec 3, 20191 min read324 views

    yarn、.npmrc 和私有 npm 仓库

    如果你的项目中使用了 yarn 和私有 npm 仓库,却依赖 npmrc 指定 registry 的话,可能会和我下面碰到一样的问题: uh-oh 更奇怪的一点是,普通的 http 请求是可以访问到的: 猜测和 npm 仓库的相应策略有关系,但是等对应部门给出解决方案不太现实,所以只好自己试试把 .npmrc 替换为 .yarnrc 好吧,没想到问题就这么解决了,所以在这里只能给大家提供一个建议: ⚠️ yarn 尽量使用 .yarnrc 来指定项目 config

  4. Oct 25, 20193 min read108 views

    优化 webpack 4 配置加速 ci 构建过程

    如果你的项目里也同时包含了 js 和 ts 的代码,相信构建速度会是项目中一个让人头疼的问题。下面我会尝试给出一些提高构建速度的配置并给出说明。 毫无疑问,配置大部分是针对 rules的。 以下给出的配置都假设你的 webpack.config.js位于项目根目录下。 ## optimization 部分 // 使用 terser 代替 uglify-js const TerserPlugin = require('terser-webpack-plugin'); const isWsl = r...

Al's blog