原创 matter.js使用小記

之前一直想看box2d,後面發現了matter.js,聽說文檔比較全面,稍微看了下也沒覺得有多全面(😂),拖了很久纔來寫了個相對完整的例子,記錄一下。 先說下整體感覺,使用的時候發現了一些bug(也可能是我使用姿勢不對),性能不是

原创 koa源碼部分解析(3)koa-body

版本4.1.1 慣例,先來看看簡單的使用 const Koa = require('koa'); const body = require('koa-body'); const app = new Koa(); // 可以給p

原创 koa源碼部分解析(2)koa-router

版本7.4.0 比較長,建議一邊看一邊打斷點,光看一遍估計是不知道在說什麼的,因爲它的思路不是面向過程的那種一條線,而是互相穿插,繞來繞去的。 koa-router的核心其實是path-to-regexp這個庫,不過koa-rou

原创 一隻sync和一隻wait

最近有一個包裏用了不少async await,但是細細看了一下發現很多地方用的比較奇怪,比如同步的函數,沒有用到await也用async,就稍微整理了一下相關的使用,沒有實現原理相關的內容,以示例爲主,有點像面試題。參考了一些文章

原创 redux、react-redux執行流程簡單解析

其實不想看react-redux、redux的源碼,平時不太喜歡用,尤其是簡單的頁面,然而總是會遇到複雜點的頁面的,所以還是要了解下,搜索了下,講react-redux、redux的文章很多,但是,好像都不太能理解,可能是風格不太

原创 koa源碼部分解析(1)本體

koa自身的代碼比較少,但是有很多依賴的npm包,有不少是在jshttp這個project裏(比如on-finished)。 版本2.7.0 先來看一個使用koa的例子 const Koa = require('koa'); co

原创 webpack+babel打包出的class是怎麼個實現

某天突然想看看ES6的class是怎麼個實現法,就隨便寫了個簡單的例子試了試,先看例子 // add.js export default class Add { add(a, b) { return a + b;

原创 多組件編輯頁面思路總結

最近在寫一個東西,類似下面這張圖,左邊是組件區,比如有文本、圖片、列表等;中間是渲染區,把左邊的組件拖動到中間區域,就可以渲染一個對應的組件出來;鑑於每個組件需要不同的渲染結果,所以右邊提供對每個組件的渲染內容的設置,根據每個組件

原创 Pure-JavaScript-HTML5-Parser源碼解讀

有個需求要用到html標籤解析,又碰巧之前有人寫過,就直接用了之前用的東西https://github.com/blowsie/Pure-JavaScript-HTML5-Parser,git上星不多,不過感覺思路比較特別,和我最

原创 關於CSRF的一點記錄

參考文章 http://www.vuln.cn/7134/ 首先,參考文章寫得非常棒,最近在看個東西,正好看到X-XSRF-TOKEN這個頭,之前沒見過,所以就查了下,貌似是防禦xsrf攻擊用的,自己對xsrf不甚瞭解,所以就查了

原创 記一個MutationObserver的問題

http://www.cnblogs.com/dong-xu/p/7000139.html 看上面這篇文章的時候,看到有個例子是講MutationObserver的,非常費解,兩個元素,一父一子,父元素設置上observer,點擊

原创 axios源碼部分解讀

最近事情多,很久沒看jquery的源碼了(唉),而且後面排的東西越來越多,暫時應該不會繼續,下次找個機會再重新撿起來吧 因爲用到的工程裏包裝了axios,並且還踩了次坑,所以拿來看了看 自己比較感興趣的特性如下: 請求和返回的攔

原创 preact管中窺豹

版本10.3.1 本文不多描述已經說得很多了的一些東西,比如setState什麼的,在preact裏面很容易找到相關代碼(在component.js裏),實現也不是特別複雜,這裏主要看看一個組件如何執行第一次渲染,以及preact

原创 看不懂react-redux就寫一個,超精簡版

react-redux的代碼,還挺多的,偷懶不想看,但是又怕別人問原理,所以就手擼一個來玩玩,超精簡 慣例,先看react-redux的使用,這是一個按鈕加一個p標籤,初始化是0,點了以後隨機生成數字,很簡單,看不懂請看redux

原创 大白話說一說node的stream

在看koa-body的時候,發現很多和流相關的操作,就去看了下node文檔和其他文章, 花了挺長時間看完以後發現還只是略知一二,分享記錄一下。很多細節還是要看官方文檔。 stream是個啥 個人理解,就是個可以控制讀寫速度的緩衝區