手寫Vue.js2.0源碼

《手寫Vue.js2.0源碼》是2023年北京航空航天大學出版社出版的圖書。

基本介紹

  • 中文名:手寫Vue.js2.0源碼
  • 出版時間:2023年9月1日
  • 出版社:北京航空航天大學出版社
  • ISBN:9787512441170
內容簡介,圖書目錄,

內容簡介

我猜您看到這本書的第一反應或許是:Vue3都出了這么久了,我還用看 Vue2的源碼分析? 直接學 Vue3 不好嗎? 對於這個問題,我的答案就是:如果您現在正在使用 Vue2及其生態作為項目開發的技術棧,並且已 經用了很長一段時間,未來短期內也不一定會有可以使用 Vue3的新項目,那么我建議您一定要好好學學 Vue2。這本書無論是對您現在工作中的幫助,還是對可能會學習 Vue3的幫助,都是立竿見影的。 但是,如果您現在已經在項目中套用了 Vue3,那么其實這本書也有很好的啟示作用。 簡單來說,就是您正在用什麼就去學什麼,這句話或許能給在技術海洋里感到迷茫的您一點點方向和光明。

圖書目錄

第1章 基本回響式原理
1.1 基本開發環境搭建
1.2 JavaScript高階技法
1.2.1 call、bind、apply太難了
1.2.2 defineProperty
1.2.3 Object.create了什麼
1.2.4 new 了個什麼
1.2.5 this到底是誰
1.3 initData:Vue初始化
1.4 Observer———回響式原理的核心
1.5 數組的回響———AOP的實際套用
1.6 初始化代碼淺析
1.6.1 扁平化後的代碼
1.6.2 按“圖”索“驥”———流程梳理
1.7 源碼的閱讀方法———任何源碼都可以這樣看
第2章 模板渲染原理
2.1 $mount———掛載節點
2.2 parseHTML———解析模板
2.3 codegen———生成render
2.4 initLifecycle———Mount? Mount!
2.5 源碼解讀———你的實現,我的實現,其實都一樣
2.5.1 綁定靜態方法
2.5.2 $mount的執行線
2.5.3 回 顧
第3章 依賴收集原理
3.1 另一個JavaScript高階知識
3.1.1 觀察者模式與發布訂閱模式
3.1.2 沒事走兩步———什麼是異步
3.1.3 mergeConfig———怎么合併兩個對象
3.2 Watcher&Dep———依賴收集
3.3 nextTick———異步更新原理
3.4 Mixin———這難道不是 mergeConfig
3.5 callHook———生命周期是這樣執行的
3.6 源碼分析之我是抄的
3.6.1 Vue2中的依賴收集
3.6.2 異步更新源碼
3.6.3 原來你是這樣的 Mixin
3.6.4 生命周期鉤子是不是這樣調用的
第4章 Watcher的其他場景
4.1 手寫computed實現
4.2 watch的核心是 watcher
4.3 回響式原理補充———數組的更新
4.4 源碼分析之不知道怎么編了
4.4.1 原來是這樣的回響式
4.4.2 依賴收集不過是彼此銘記
第5章 Diff算法
5.1 前置代碼整理
5.2 簡單 Diff算法
5.2.1 “當前節點不同”的情況
5.2.2 比對子節點的簡單情況
5.3 完整的 Diff算法
5.3.1 最佳化列表常見操作
5.3.2 為什麼循環的時候設定的key不能用數組的下標
5.3.3 亂序比對
5.4 細節調整
5.5 Diff算法的真正源碼
第6章 手寫 Component
6.1 Vue.extend的實現
6.2 Vue.component的實現
6.3 組件的虛擬節點
6.4 組件的渲染
6.5 組件渲染源碼梳理
6.5.1 Vue.extend源碼
6.5.2 Vue.component源碼
第7章 源碼的其他實現
7.1 生命周期源碼分析
7.1.1 生命周期的簡單調試
7.1.2 生命周期的價值
7.2 Vue.$set源碼分析
7.3 component源碼分析
7.3.1 組件的更新
7.3.2 異步組件與函式式組件
7.3.3 props源碼分析
7.3.4 組件的事件綁定
7.3.5 $children與$parent
7.4 $ref源碼分析
7.5 provide和inject
7.6 $attrs與$listeners
7.7 v if與v for
7.8 v model源碼分析
7.8.1 parse解析指令
7.8.2 把指令的 AST 轉換成render函式
7.8.3 針對v model的complier處理
7.9 自定義指令源碼分析
7.9.1 directive方法的註冊
7.9.2 解析自定義directive
7.10 修飾符的實現原理
7.10.1 特殊修飾符的特殊處理
7.10.2 表單修飾符的處理
7.10.3 sync修飾符是怎么實現的
7.11 slot源碼分析
7.12 keep alive源碼分析
第8章 手寫 VueRouter源碼
8.1 VueRouter使用簡介及項目初始化
8.1.1 路由模式
8.1.2 路由組件
8.2 給 Vue組件綁定路由信息
8.3 實現路由的扁平化
8.4 實現路由系統
8.5 實現routerLink組件
8.6 實現routerView 組件
8.7 實現路由守衛
8.8 縫縫補補history模式
第9章 VueRouter源碼分析
9.1 尋找入口、安裝並運行起來
9.2 解析路由信息
9.3 路由跳轉流程
9.4 路由組件
第10章 手寫 Vuex源碼
10.1 Vuex使用簡介
10.2 似曾相識的基本實現
10.3 實現模組收集
10.4 實現模組安裝
10.5 實現模組的命名空間
10.6 實現模組的動態註冊
10.7 實現外掛程式機制
10.8 實現其他細節
10.8.1 異步的actions
10.8.2 嚴格模式
10.8.3 輔助函式
第11章 Vuex源碼分析
11.1 打包入口及結構
11.2 模組的收集
11.3 模組的安裝
第12章 Vue2中的SSR
12.1 項目搭建
12.2 打包客戶端代碼
12.3 打包伺服器端代碼
12.4 伺服器渲染路由
12.5 在伺服器渲染中套用 Vuex
參考文獻

相關詞條

熱門詞條

聯絡我們