React以对象操作state导致不一致

2021年05月13日
/ /
react-hexagon
写React代码的时候遇到一个state状态不一致的问题:如果state是对象(数组),用扩展运算符多次更新,一些状态被冲掉了。 class组件中,通常设置state的方法的步骤是 12345678910111213141516171819202122 class Clock extends React.Component {  constructor(props) {    ...

chrome官方吐槽:你们css的flex太难用了!

2021年04月28日
/ /
css-flex
2021年开年大吉。 好家伙,一个季度没更新。 还是水一篇刷一下。 自从移动端开始大行其道之后,就有了响应式,但是,布局要考虑float、position、block / inline-block,然后还有元素左右居中,上下居中。慢慢的,一种更加强大的布局-flex就流行起来(顺序不知道先后)。 真香! 但是,直到前几年,我才慢慢使用,究其原因,还是配置项太多,和其他直观的属性相 ...

通过firebase搭建一个评论系统, part 1

2020年12月31日
/ /
firebase_logo
随着评论习惯慢慢改变,之前如火如荼的博客慢慢消沉下去了,随之慢慢冷淡下去的是博客连接起来的评论圈子,例如在各个博客下面留言“混个脸熟”,还有通过评论来推广链接等做法,也慢慢淡出我们的视线。 于是,很多博客,尤其是静态博客,要么直接内嵌基于github的comments,第三方disqus或者是直接没有评论。评论虽然不是必需品,但是作为一个blog,一个适当的评 ...

从网抑云切换到spotify

2020年11月11日
/ /
spotify-logo
一般正式听歌还是用播放设备,但是有时候(上班、上下班、图新鲜)想试试不一样的,就需要用流媒体,所以电脑和手机都需要有个app来支持。 之前一直在网易云,但是版权越来越少,签约了很多所谓“新人”,但是大头儿该没有还是没有,另外那个app做的,体积越来越大,视频、社交、电商,啥都往里整,正经“正在播放”都得找半天。在QQ音乐、Apple Music、Soptify之前 ...

Axios用cancelToken取消未完成的异步请求

2020年11月06日
/ /
axios
有些问题,可能由于网速提升太快,慢慢被我们淡忘,比如雪碧图、连接合并这些优化。但是另外还有些容易忽略的问题,比如对于发起的ajax请求,有时需要手动终止,尤其是react的组件,有时在unmounted组件上没清理异步调用,就会碰到警告。 开发时把网络速度调整到slow 3G,发现部分组件报了警告: Warning: Can’t perform a React state update on an unm ...

认识v8编译的字节码(bytecode)

2020年07月28日
/ /
ignition
js代码在v8的编译过程 代码需要编译为机器代码,才能最终在目标机器上执行。v8为了做到这一点,设计了中间层-字节码(bytecode)。 为了方便转译为机器代码,字节码采用了和物理CPU类似的带寄存器-累加器的计算模型。它的理解难度介于高级语言和汇编语言中间。 这个代码到bytecode的转译过程发生在Ignition里;而从bytecode到机器代码,则在TurboFan里进行。 v ...

正则表达式里问号的作用

2020年07月10日
/ /
regextester-icon
正则表达式一直是我的弱项,一来因为用的比较少,所以每次碰到的时候,脑子里的两个小人儿就开始吵架:“又碰到了,又不会了,赶紧学习一下吧。”“不会也没什么,不经常用,再说split/indexOf也一样能达到目的,打游戏吧”,然后我全境封锁2就满级了。 正则里问号主要用在三个地方:量词、分组、断言 量词 问号把默认的贪婪量词(greedy quantifier)变为懒惰量词(laz ...

最近“沉迷”游戏

2020年05月08日
/ /
the-division-logo
我很少玩游戏。 除去成年人的时间分配困境,我的主要原因是,玩游戏注意力总是会分散在一些无关紧要的事情上。例如老滚总是在测试这个山头儿如果直接爬能不能上去(结论是通常是可以),几个小时就在半山腰横跳、折返跳、摔死重新跳;射击游戏又总想蹲角落阴人,找些刚好能擦到边又不会被反杀的,诸如柜子中间、狭窄过道、门后之类的地方;辐射4老想开控制台无限 ...