原创 重學Vue(二)--響應式

前言 不同於React的不可變數據,Vue的一套響應式機制成爲Vue的一套核心原則,從2.x基於Object.defineproperty到3.0即將推出的proxy和reflect,弄懂這一套還是很有必要的。 2.x 首先,對於

原创 Vue.js源碼分析(一)--init

前言 vue源碼相對於React還是要簡單一些的,今天開始踩這個坑,幫助我更好的去理解Vue深層的東西,也能更好的看懂Vue3吧。 init 首先,當我們new Vue時,會調用this._init方法,而這個方法是在initMi

原创 第一週入職總結

做了啥 一週的入職過去了,整個周也沒有做太多東西,總結下來就是熟悉一些文檔,熟悉整個工作流包括CICD的流程,然後通過修復BUG瞭解項目,同時也是瞭解一些開發工具的使用,順便把之前一些模糊的概念也漸漸完善了。 技術 在技術上,最典

原创 入職第一天--隨便說幾句話

前言 入職小紅書的第一天,感覺邁入了全新的階段,走路的感覺都不一樣了,雖然一個人都不認識,但是總體感覺還是很爽,估計是想快點逃離學生生涯的副作用吧。 入職 走出去地鐵口就是小紅書的廣告牌: 順着牌子走一走,測了測體溫,呈上了入職

原创 多智能體強化學習簡介

前言 兜兜轉轉總算找到了一些看得進去的知識和文章,能把博弈論知識混雜到無人機集羣之中的最好方式還是很少的,也算機緣巧合找到這個學習資料還算不十分貧瘠的領域。當然難度也是TOP級別的,畢竟自己連單智能體的強化學習都沒整明白。 最後,

原创 Vue.js源碼分析(六)--component vnode

Ctor 前面講vnode生成都是通過判斷tag是否爲string類型時的過程,當我們使用組件時情況就不一樣了,這裏主要是通過createComponent方法實現的。 首先照常先看函數簽名,由以下五個: Ctor: Cla

原创 Vue.js源碼分析(五)--update

_update 這個方法是幹什麼的呢,前面我們生成了vnode,下一步就是把vnode映射到真實的DOM節點上,這裏包含了初次渲染和後面的更新渲染,拿首次渲染爲例,整理參數之後會去調用vm.__patch__方法,接着會去判斷瀏覽

原创 Vue.js源碼分析(四)--createElement

前言 今天開始看VNode了。 vnode 首先找到vnode定義,在vnode裏面的vnode.js中,Vue的vnode是參考snabdom實現的,這個vnode庫和React的vNode和diff的實現是有一些不同的,這一點

原创 Vue.js源碼分析(三)--render

render 在instance的render.js裏面可以找到renderMixin方法,裏面定義了_render方法: const { render, _parentVnode } = vm.$options _pa

原创 Vue.js源碼分析(二)--mount整體流程

$mount 這一節看掛載,從有編譯的運行時觸發的$mount方法出發,這個函數裏面只有一句話: el = el && query(el) 這是用來保證el的類型的,我們來看query方法,實現的很直接,如果el是個字符串,使用

原创 2020 4月 月末總結(飛速流逝的一個月)

前言 整個月基本沒有再面試,拿到了mentor給出的一些學習方向,然後就是在應付導師的論文,一個月過的好快。 總結 這周主要是兩塊,一個是Vue全家桶和VCA的學習;另一塊就是論文方向了,後者沒啥好說的,也不是這個博客的初衷,咱們

原创 vue源碼分析(一)--初始化

前言 vue源碼相對於React還是要簡單一些的,今天開始踩這個坑,幫助我更好的去理解Vue深層的東西,也能更好的看懂Vue3吧。 init 首先,當我們new Vue時,會調用this._init方法,而這個方法是在initMi

原创 重學NPM

前言 什麼?npm還要學麼?確實不咋需要學,所以推薦你看這篇文章。 你用的npm 前些日子Github把NPM納入自家後宮,這個完虐pip的最大的包管理器從此也有了微軟的印記。最近想打包個項目發到NPM上去,自然要對npm進行全面

原创 寫storybook時報錯 preview hooks及Webstorm與VS Code的全方位比較

描述 其實是個小錯誤,就是怎麼也想不通,還以爲hooks不能直接寫story,想想也不對啊,難道只是不支持useContext嗎? 之所以有這個想法是之前在使用react-three-fiber時遇到的一個BUG,redux的數據

原创 storybook生態初體驗

前言 上一篇文章簡單介紹了一下storybook,這一篇用個實例來做一下。 生態 首先因爲是配合React和CRA使用,所以需要一下幾個插件: @storybook/addon-info @types/storybook__add