Vue兩個版本的區別和使用方法(更深層次瞭解)
阿新 • • 發佈:2020-02-17
在我們使用 vue時,我們可以引用兩個不同版本的 Vue,分別是 Vue完整版(vue.js)和 Vue(vue.runtime.js )非完整版,那麼它們的區別是什麼呢,今天我們就來分析下這兩個不同版本之間的區別。
1、檔名
2、檔案大小
完整版:同時包含編譯器和執行時的版本。
編譯器:用來將模板字串編譯成為 JavaScript 渲染函式的程式碼。
而非完整版不包含編譯器,體積約比完整版小 30%。
3、檢視
完整版
檢視寫在 HTML裡或者 template選項裡,由於有 compiler(編譯器)的存在,完整版執行時:用來建立 Vue 例項、渲染並處理虛擬 DOM 等的程式碼。基本上就是除去編譯器的其它一切。
非完整版
完整版執行時:當使用 vue-loader 或 vueify 的時候,*.vue 檔案內部的模板會在構建時預編譯成 JavaScript。你在最終打好的包裡實際上是不需要編譯器的,所以只用執行時版本即可。
// 不需要編譯器 new Vue({ render (h) { return h('div',this.hi) } }) // 需要編譯器 new Vue({ template: '<div>{{ hi }}</div>' })
4、配置
從 webpack 引入,完整版需要配置 alias,非完整版 是預設配置;
從 @vue/cli 引入,完整版需要額外配置,非完整版 是預設配置。
總結
既然這兩者有這麼多不同,那我們平時用哪個版本呢?
當然是用非完整版了,理由如下:
1.保證使用者體驗,使用者下載的JS檔案體積更小,但只支援h函式
2.保證開發體驗,開發者可直接在vue檔案裡寫HTML標籤,而不寫 h函式
3.活讓loader做,vue-loader 會把vue檔案裡的HTML轉為h函式,這樣我不用寫太多麻煩的 h函式就可做到和完整版一樣的事,還更節約檔案大小,提升使用者體驗。
以上所述是小編給大家介紹的Vue兩個版本的區別和使用方法(更深層次瞭解),希望對大家有所幫助!