Nono's Blog

Vue 原始碼:整理 Prototype & Global


整理 Vue runtime,Vue 原形鍊上的方法以及 Global 方法。版本是 2.6.10。

以下是有對 Vue prototype & Global 有做更動的檔案

  1. web/entry-runtime.js
  2. web/runtime/index.js
  3. core/index.js
  4. core/instance/index

從 core/instance/index 出發,一步一步的來看加了什麼

initMixin

stateMixin

eventsMixin

lifecycleMixin

renderMixin

initGlobalAPI

core/index

runtime/index

其他

build

Vue 使用 rollup 來做打包工具,因為要打包出來相依不同的環境,所以有很多不同的 entry。 有興趣可以參考 官網說明
此外,還有為了支援 server side render、weex(mobile),也做了不同的處理。 設計成這樣一層又一層加上去的設計,增加了 Vue prototype 的彈性,能在相容上做更多變化。