前段时间组里的小伙伴让我帮忙排查一个线上问题,我觉得排查流程比较有意思,想着记录一下看看是否能对其它同学有所帮助,遂有此文。
事情的起因是前几天线上突然收到一个报警,错误内容是 TypeError: C.fn is not a function。相关同学尝试排查无果后又回滚了最近上线的变更也没有排查到问题。虽然最终确认了复现路径,但是在本地却无法复现。

在 React 组件中,我们会在 useEffect() 中执行方法,并返回一个函数用于清除它带来的副作用影响。以下是我们业务中的一个场景,该自定义 Hooks 用于每隔 2s 调用接口更新数据。

话说最近真是流年不利,感觉各种BUG犹如天灾一样全部冒出来了,这不昨天又解了一个非常无语的问题,大概是关于换行和正则的臭虫,下面给大家吐槽一下。
今天早上刷微博的时候看到 @fakefish 分享了一个游戏微博,游戏的名字叫做《Untrusted》,通过修改JS代码来通关的游戏,作者把游戏代码托管在了Github上,游戏地址在 http://alexnisnevich.github.io/untrusted/ 。
Level 1 这关简单,移动玩家对象@先拾取⌘然后移动到出口就好了。
Level 2 这关看着挺吓人的,路都被#号给各种拦着了,但是其实读一下代码发现也就那么回事。13行的new ROT.Map.DividedMaze(map.getWidth(), map.getHeight())负责根据地图大小生成迷宫,30行到33行在出口的四个方向生成了#号阻拦我们。看着其实挺恐怖的,但是其实我们只要开辟一个新思路不移动@对象到出口而是把出口移动到对象边上就好了。
前言 呵呵,没错,公子我又再次光荣的把硬盘搞挂了,然后音乐又没了!鉴于之前已经有过一次经验(批量下载虾米已下载歌曲),所以本以为这次也会轻而易举了的。没想到居然在我写出那篇日志后没多久,官方居然各种更新(更新页面,下载机制,Flash播放器),然后我那篇日志的方法就没法用了。不过官方这个也都是小改,所以我也只要小改下代码就成啦!哈哈!
有什么变化 首先要说的是虾米官方的下载思路还是没变的,基本上还是之前日志里头说的那样:
在网站点击下载之后,网站向你的账户中未下载列表传递下载歌曲信息,之后未下载列表则返回一个以emoun://特有协议开头的文件,用以打开虾歌(这个和迅雷thunder://以及电骡等的ed2k://是一个道理)。虾歌打开后查询未下载的表单,返回表单中的歌曲,然后下载。同时将未下载列表中的歌曲提交到已下载列表中,并在未下载列表中删除。 - 批量下载虾米已下载歌曲
本文方法已失效,新版见:如何批量下载虾米已下载歌曲(新)
前言 首先要说明的是,这不是一篇讲述如何免费批量下载虾米高质量音乐的文章,而是讲述一个杯具男如何因为懒惰而DIY出的成果。所以如果抱有前述心理的同学到此可以关闭网页了。另外本文中代码运用到了PHP+CURL+JavaScript,推荐大家在本地环境中进行操作。同时最重要的是,本文不是讨论如何绕过虾米的收费机制下载歌曲,所以你必须保证你有足够的虾米币或者红包用来下载歌曲才行,否则一切免谈。
哈哈,Firefox终于更新到4.0了呢,最重要的是Firebug已经支持4.0啦!(其实1.7版就支持的,只是我等到FB的官方推送后才知道。)在虚拟机里头安装了一下,发现除了easycomment那个插件不兼容(估计以后也不兼容了吧,感觉都没人维护了),其它的都较好。