原创 storybook上手(安裝分析,修改配置)

前言 這個名字大家可能再很多地方都見過,今天我們來真正上手一下。 安裝 storybook作爲UI庫設計的好朋友,在很多地方都有用武之地,不限於View庫或者MVVM框架,這裏以React爲例。 npx -p @storybook

原创 Jest和testing-library/react--React的單元測試

前言 測試一直是忽略的東西,雖然之前簡單上手過Jest,但是總體來說很淺顯,這次深入一下React的單元測試。 Jest 關於Jest,這裏簡單回顧一下: test('test common', ()=>{ expect(2+

原创 文獻閱讀筆記(1)

前言 感覺要對讀過的文獻進行一下整理了,不然每篇還是和新的一樣。 無人作戰飛機一對一超視距空戰效能評估 這篇文章針對無人作戰飛機空戰效能評估缺少通用性模型的問題,再分析目標發現概率,空空導彈目標截獲概率,載機生存概率以及空空導彈殺

原创 Vue3.0+vuex4.0嚐鮮

前言 做題3.0出了beta版,這一段時間使用VCA的過程中,也接觸了不少3.0的特性,除了些生態相關的東西,別的體驗已經很好了,今天就基於vue-cli-plugin-vue-next搭建一個工程化的Vue3.0樣例。 安裝 注

原创 走一遍Vue渲染更新的流程

前言 這個圖估計大家都看爛了,這篇文章就從這幅圖講起。 概覽 首先new Vue()之後會進入初始化階段,初始化的東西有很多,如我們的常見的生命週期,事件,屬性與狀態,計算屬性與watch,並實現數據的響應式。 初始化完成之後就

原创 重學Vue(三)--一點點高級特性

前言 之前走過一遍Vue基礎,和React的對比去學,上手也還可以,也着實感覺到Vue在某些方面是很方便的。這篇文章主要介紹一下Vue的高級特性。 slot 說slot是高級特性,但是感覺平時的使用中也會帶來很大的方便。slot主

原创 重學Vue(一)

前言 因爲種種原因,時隔半年,再次開始了Vue的系統學習,作爲現在最火的類MVVM框架,之前前端基礎一塌糊塗時就可以做出來些東西了,如今經過了各種查漏補缺各種洗禮,也更加期待通過學習這個框架進一步鞏固自己的前端知識體系。 模板語法

原创 渲染進程,作用域鏈,執行上下文,setState,JSON.parse

什麼時候多頁面共用一個渲染進程 同站的頁面會公用一個渲染進程,僅當從一個站點打開另一個同站站點時生效。 如果打開兩個同站標籤,還是會用兩個渲染進程。 正確理解作用域鏈 function bar() { console.log

原创 React事件,閉包,JS模擬虛擬DOM等

React事件等小知識 React.nativeEvent.currentTarget可以拿到原生事件綁定的位置,指向的是document,即事件都掛載到document上。 e是不需要傳遞給事件的,默認會拿到. React爲

原创 React類組件,爲什麼我們需要Redux

前言 作爲一個起步在hooks發光發熱時期的小白,對類組件的不熟悉的劣勢漸漸顯現出來,類組件生命週期甚至沒有寫過demo去驗證一下。 生命週期 先貼出來最新的生命週期圖解,然後今天被問到了如果需要初始數據應該怎麼操作。之前遇到這

原创 IFC,渲染層與合成層,Hidden_Class,Fiber,Node多進程等

IFC IFC的行框高度由它包含元素的最高高度來決定。在一個行內格式化上下文中,盒是一個接一個水平放置的,從包含塊的頂部開始,同時這些盒之間的水平margin,border和padding都有效。 創建一個IFC,用其中一個元素

原创 每天寫一點(單向數據流、觀察者模式)

前言 最近每天學的都是些查缺補漏的知識,深度一般廣度到不少,因此用這樣的方式做個每日總結感覺還不錯,今天主要寫三個東西,一個是偶然看到的易混點,一個是發佈訂閱模式與Vue的結合問題,還有就是一次nice的面試收穫。 怎麼理解Rea

原创 查缺補漏,下一個永遠不會

爲什麼說DOM操作是昂貴的 我們直到,首先DOM節點其實也是JS對象,爲什麼操作虛擬DOM沒有昂貴一說,操作真實的DOM節點就有昂貴之談呢? 首先可以確定的是操作DOM本身並不會費時費力,但是DOM身處於瀏覽器大環境中,操作DOM

原创 總結一下最近遇到的面試題(上)

1.怎麼理解H5語義化 用正確的標籤做正確的事,方便我們開發時閱讀以及文檔式的閱讀。 有利於搜索引擎的解析和網站的SEO。 歸根結底還是讓程序或者機器去理解網頁,也能更好的讓人去理解網頁。 2. H5與H4的區別 文件類型聲

原创 LeetCode 劍值Offer(2)

前言 估計還得寫10個。。。 用兩個棧實現隊列 有個點,這個題要求彈出空的話爲-1,所以我們做個||: var CQueue = function() { this.stack1 = [] this.stack2