React + Webpack 构建打包优化

React 本身的优化

阅读全文

深入理解 Koa2 中间件机制

本文通过分析源码,深入学习 Koa 的中间机制。

阅读全文

koa 实现 jwt 认证

关于 Token 认证机制,这里不做更多解释。不清楚的可以看我的这篇文章:Web开发中常见的认证机制
GitHub 地址:koa-jwt-sample

阅读全文

《零秒思考》- 随时随地记下你的想法

阅读全文

理解 async/await

ES7 提出的 async 函数,终于让 JavaScript 对于异步操作有了终极解决方案。No more callback hell。
async 函数是 Generator 函数的语法糖。使用 关键字 async 来表示,在函数内部使用 await 来表示异步。
想较于 Generator,Async 函数的改进在于下面四点:

阅读全文

2017-JS Conf 记录

next.js

国外大神 Guillermo Github地址 现场 coding,演示 next的功能,同时发布3.0,效果惊艳。大神码代码的速度令人称赞,非常快!
总结:是时候开始了解服务端渲染并接触next.js,虽然现在公司的业务可能暂时用不上 SSR,不过还是可以作为业务项目玩一玩。

阅读全文

cnzz 惨痛的教训

对于静态博客的一个硬伤就是自身无法实现文章阅读数的统计,必须借助第三方工具。常用的有一键安装使用的卜算子,也有利用 Leancloud 自己存储和显示。
我比较倾向于第二种。毕竟这样可以将自己博客的数据掌握在自己手中,而不是放在别人的服务器,说不定哪天就挂了,就如同多说和网易云跟帖。

阅读全文

弃坑王者荣耀的日子

王者荣耀有多火已经不需要说了。大街小巷不分年龄、不分性别地充斥着 欢迎来到王者荣耀敌军还有5秒到达战场double kill 的声音。
作为一个从小到大,对游戏一直兴趣不大的人,竟然也入了王者荣耀的坑。而且这坑一入就是三个多月,深陷其中,难以自拔。这三个多月里面,除了出国旅游的几天没有玩之外,几乎每天都玩,周末更是疯狂,几乎玩到凌晨。然而即使这么疯狂的玩,我还是没有上王者,这是个悲伤的故事。

阅读全文

多个域名指向同一个 GitHub Pages

昨天重新申请了我自己名字全拼的域名 chenhuichao.com,然后把之前的 iamsuperman.cn 的国内域名给替换了。
换完之后才发现一个问题:如何让原有散落在各大搜索引擎和社交网站上的博客地址及 GitHub 多个 demo 地址也能保持正常访问?

阅读全文

两款时间记录管理工具

时间管理的一个重要原则就是记录下你每天的时间都花在什么地方,然后通过数据来观察每天时间花费的组成,从而找出时间黑洞,并有针对性的做出改变。所以今天就来推荐两款强大的时间记录神器。

阅读全文

开放或者保守?

每个人性格都是带有偏向性的,决定了你是拥抱开放或者是趋于保守。如何才能判断你是属于哪种性格呢?很简单,你回想一下,在你平时做选择时,你是经常做出相同的决定,还是每次都是都有不同的决定。
最贴近生活的例子:每次你去一家饭馆吃饭,你总是点以前尝试过的菜?还是每次都尝试新的菜呢?
前者的你,就相对比较保守。后者的你,可能更喜欢开放。

阅读全文

基于 Jest + Enzyme 的 React 单元测试

前言

如果你想学习 React 单元测试,那就从这篇文章开始吧。Star 项目,clone 到本地,根据教程走一遍,有任何问题欢迎 issue 讨论。

阅读全文

如何利用“评估模式”来优化相亲策略

首先得声明一点,这完全是个标题党,并不是要教你如何相亲,而是通过相亲这个例子来更好的理解 评估模式中的联合评估和单独评估。
先来看看下面的例子:

如果你是个女孩子,经人介绍了一个不错的男生,要去相亲。你们素未谋面,约定今天碰面。在这个节骨眼上,第一印象很重要,尤其是女孩子的相貌。
你精心打扮,正准备出门,碰巧舍友也有空,你盘算着是不是要带室友一起去,好让她帮着参谋参谋。

阅读全文

一个知乎回答引发的思考

今日知乎上的一个 timeline 的回答引起了我对于批判性思考的回答。
知乎直达:如何看待女童店内奔跑在饭店拐角处与店员端的烤鱼锅相撞,家长索赔39万

阅读全文

搬家随想

从上礼拜五开始的搬家到今天终于算是告一段落了。
每次搬家都是一次体力与精力的考验,搬家需要体力,搬到新地方后还需要花费精力布置,打造合适的住所空间,每次搬完家都要累个好几天才能缓过来。
好在生活总是在朝着越来越好的方向在发展,搬到了离新公司只有两站路的地方住了,每天再也不用生怕错过公交车而匆匆忙忙出门,早上可以不慌不忙得走路到地铁站,然后十几分钟就到公司了。所带来的就是每天可以省下一个多小时的通勤时间和无法衡量的精力。
好处之多自然不言而喻,省下来的时间可以用于看喜欢的书,做喜欢的事,运动健身等等。

阅读全文

Web开发中常见的认证机制

HTTP基本认证(HTTP Basic Auth)

在HTTP中,HTTP基本认证是一种允许Web浏览器或者其他客户端在请求时提供用户名口令形式的身份凭证的一种登录验证方式。

阅读全文

面对众多的前端框架,你该如何学习?

记得就在刚接触 AngularJS 的时候,那时市场上正值 React、Vue、AngularJS 三足鼎立,大量的前端新人可能都会有这样的困惑:这三个框架到底该学哪个好呢?我自己当时也是非常的迷惑,找不到一个合适的答案。
作为一个 React、Vue、AngularJS 都写过的人,现在这个已经不再是问题了。先说结论:
公司用哪个框架就先学框架;其次自己喜欢哪个框架就学哪个框架
我的经历是因公司业务而以 AngularJS 起步,再因个人兴趣学习 Vue,最后再因为新公司以 React 技术栈为主,从而拥抱 React。
知识和学习能力是可以迁移的,掌握了 Vue 技术栈,再去学习 React,其迁移成本非常的小,你所需要做的是看文档,比较二者的异同,然后就可以直接上手了,反之也成立。因为 Vue 和 React 的相似度确实蛮高的。
经过了这三个框架的学习,发现学习可以总结成3个步骤:

阅读全文

再见,添米

今天晚上终于向上司提出了离职的决定了。这意味着要离开了我职业生涯的第一家公司,从实习一直到现在两年半的时间。每段经历都能为你的成长提供宝贵的经验,感谢添米的这两年。

离开和加入一样,每个选择都有其理由

离开并不是因为添米不好,而是因为现在的添米对于我而言,已经快变成了一个舒适区,感受不到任何的挑战和压力。这样的状态让我很是恐慌,本该努力奔跑的年纪,不应该停下脚步迷茫。

阅读全文

【Vue + axios】一个项目学会前端实现登录拦截

一个项目学会vue全家桶+axios实现登录、拦截、登出功能,以及利用axios的http拦截器拦截请求和响应。

前言

该项目是利用了Github 提供的personal token作为登录token,通过token访问你的Repository List。通过这个项目学习如何实现一个前端项目中所需要的
登录及拦截、登出、token失效的拦截及对应 axios 拦截器的使用。
Gihtub地址:https://github.com/superman66/vue-axios-github

阅读全文

在网页中引入Github-Star

最近喜欢上折腾点小东西,顺便练练技术,熟悉下开源社区的玩法。经常会看到网页中引入github repository 的start的图标和“fork me on github”的丝带,长👇这样:
img
img
有三种方式可以实现在页面、markdown引入star。

阅读全文