亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

理順8個版本vue的區別(小結)

發布時間:2020-09-23 22:27:03 來源:腳本之家 閱讀:188 作者:ziwei3749 欄目:web開發

一共8個版本的vue

理順8個版本vue的區別(小結)

術語

  • 完整版:同時包含編譯器和運行時的版本。
  • 編譯器:用來將模板字符串編譯成為 JavaScript 渲染函數的代碼。
  • 運行時:用來創建 Vue 實例、渲染并處理虛擬 DOM 等的代碼。基本上就是除去編譯器的其它一切。
  • UMD:UMD 版本可以通過 <script> 標簽直接用在瀏覽器中。jsDelivr CDN 的 https://cdn.jsdelivr.net/npm/vue 默認文件就是運行時 + 編譯器的 UMD 版本 (vue.js)。
  • CommonJS:CommonJS 版本用來配合老的打包工具比如 Browserify 或 webpack 1。這些打包工具的默認文件 (pkg.main) 是只包含運行時的 CommonJS 版本 (vue.runtime.common.js)。
  • ES Module:ES module 版本用來配合現代打包工具比如 webpack 2 或 Rollup。這些打包工具的默認文件 (pkg.module) 是只包含運行時的 ES Module 版本 (vue.runtime.esm.js)。

重點:

如果你需要在客戶端編譯模板 (比如傳入一個字符串給 template 選項,或掛載到一個元素上并以其 DOM 內部的 HTML 作為模板),就將需要加上編譯器

通俗來說,就是runtime版本是無法對template進行解析的

一共8個vue版本,都是用在什么情況下的?

  1. 默認會用的哪個vue版本,vue-cli里用的哪個版本?
  2. 如何指定使用哪個版本的vue?

不急,從2個維度去理解這8個版本。

  • 根據是否需要編譯器分為: 運行時版本 和 完整版
  • 根據這個vue代碼用在什么地方: 分為UMD / CommonJS / ES Module

【運行時版本】和【完整版】的區別: 用不用編譯?

  • 完整版: 包括編譯器和運行時的版本
  • 編譯器: vue里用的<template></template>語法是需要被編譯的
  • 運行時: 用來創建Vue實例、渲染、處理虛擬Dom,可以理解為除了編譯器剩下的代碼都屬于運行時

如果你需要使用template的語法,就需要編譯器,那么就要使用完整版

用了.vue文件的大多數情況下,你可以用運行時版本

當你使用vue-loader或vueify的時候, *.vue文件內部會預編譯成JS,所以你在最終打好的包里,

實際上是不需要編譯器的,所以這種情況,應該用運行時版本,畢竟運行時版本的體積比完整版要小30%

如果我一定要用完整版的呢? 如何選擇版本呢?

你需要在webpack里配置alias

module.exports = {
 // ...
 resolve: {
  alias: {
   'vue$': 'vue/dist/vue.esm.js' // 用 webpack 1 時需用 'vue/dist/vue.common.js'
  }
 }
}

UMD / CommonJS / ES Module 的區別: 你的vue用在什么地方?

  • 當你通過script標簽來引用vue源碼時,用UMD版本
  • 當你通過低版本的打包工具,比如webpack1,用CommonJS版本
  • 當你通過現代打包工具比如 webpack 2 或 Rollup,用ES Module版本

其他

  • vue源碼會根據process.env.NODE_ENV來判斷是用生產還是開發環境的代碼
  • webpack里可以有自帶的 new webpack.DefinePlugin()來設置process.env.NODE_ENV

類似這樣

  new webpack.DefinePlugin({
   'process.env': env
  }),

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

威远县| 衡阳县| 盐城市| 九江县| 土默特左旗| 邵东县| 格尔木市| 苍南县| 饶平县| 焉耆| 灌南县| 吉木萨尔县| 台山市| 连江县| 河源市| 阳高县| 兴国县| 大田县| 宁武县| 辉南县| 顺昌县| 阿拉尔市| 高雄县| 楚雄市| 利川市| 巴林左旗| 神木县| 通山县| 临夏县| 高州市| 云林县| 枞阳县| 华宁县| 宝坻区| 博乐市| 建湖县| 浠水县| 盈江县| 社会| 应用必备| 正镶白旗|