最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

理順8個版本vue的區(qū)別(小結(jié))

 更新時間:2018年09月17日 10:08:52   作者:ziwei3749  
這篇文章主要介紹了理順8個版本vue的區(qū)別(小結(jié)),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

一共8個版本的vue

術(shù)語

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

重點(diǎn):

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

通俗來說,就是runtime版本是無法對template進(jìn)行解析的

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

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

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

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

【運(yùn)行時版本】和【完整版】的區(qū)別: 用不用編譯?

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

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

用了.vue文件的大多數(shù)情況下,你可以用運(yùn)行時版本

當(dāng)你使用vue-loader或vueify的時候, *.vue文件內(nèi)部會預(yù)編譯成JS,所以你在最終打好的包里,

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

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

你需要在webpack里配置alias

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

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

  • 當(dāng)你通過script標(biāo)簽來引用vue源碼時,用UMD版本
  • 當(dāng)你通過低版本的打包工具,比如webpack1,用CommonJS版本
  • 當(dāng)你通過現(xiàn)代打包工具比如 webpack 2 或 Rollup,用ES Module版本

其他

  • vue源碼會根據(jù)process.env.NODE_ENV來判斷是用生產(chǎn)還是開發(fā)環(huán)境的代碼
  • webpack里可以有自帶的 new webpack.DefinePlugin()來設(shè)置process.env.NODE_ENV

類似這樣

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

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Vue3配置vite.config.js解決跨域問題的方法

    Vue3配置vite.config.js解決跨域問題的方法

    跨域一般出現(xiàn)在開發(fā)階段,由于線上環(huán)境前端代碼被打包成了靜態(tài)資源,因而不會出現(xiàn)跨域問題,這篇文章主要給大家介紹了關(guān)于Vue3配置vite.config.js解決跨域問題的相關(guān)資料,需要的朋友可以參考下
    2024-07-07
  • 使用Vue3創(chuàng)建多布局系統(tǒng)的三種方法

    使用Vue3創(chuàng)建多布局系統(tǒng)的三種方法

    布局是中大型網(wǎng)站或應(yīng)用的基礎(chǔ),假設(shè)你正在創(chuàng)建一個網(wǎng)頁應(yīng)用,它包括主頁、營銷頁面和應(yīng)用頁面,你不會想要為每一頁重復(fù)所有的工作,對吧,與Nuxt不同,Vue 3并沒有內(nèi)置的布局系統(tǒng),但是別擔(dān)心,這里將向你展示3種簡單的方法來實(shí)現(xiàn)這一點(diǎn),需要的朋友可以參考下
    2023-08-08
  • vue項(xiàng)目下載文件重命名監(jiān)測進(jìn)度demo

    vue項(xiàng)目下載文件重命名監(jiān)測進(jìn)度demo

    這篇文章主要為大家介紹了vue項(xiàng)目下載文件重命名監(jiān)測進(jìn)度demo,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-10-10
  • vue中路由跳轉(zhuǎn)的多種方式(和$router下路由跳轉(zhuǎn)的那幾個方法的區(qū)別)

    vue中路由跳轉(zhuǎn)的多種方式(和$router下路由跳轉(zhuǎn)的那幾個方法的區(qū)別)

    Vue.js是一款流行的前端JavaScript框架,它提供了多種方式來實(shí)現(xiàn)路由跳轉(zhuǎn),本文給大家分享vue中路由跳轉(zhuǎn)的幾種方式(和$router下路由跳轉(zhuǎn)的那幾個方法的區(qū)別),感興趣的朋友一起看看吧
    2023-11-11
  • Vue3處理大數(shù)據(jù)量渲染和優(yōu)化的方法小結(jié)

    Vue3處理大數(shù)據(jù)量渲染和優(yōu)化的方法小結(jié)

    在現(xiàn)代Web應(yīng)用中,隨著用戶數(shù)據(jù)和交互的復(fù)雜性增加,如何高效地處理大數(shù)據(jù)量渲染成為了前端開發(fā)的重要環(huán)節(jié),本文將以Vue 3為例,探討如何優(yōu)化大數(shù)據(jù)量渲染,提升應(yīng)用性能,需要的朋友可以參考下
    2024-07-07
  • vue實(shí)現(xiàn)抽獎效果Demo

    vue實(shí)現(xiàn)抽獎效果Demo

    這篇文章主要介紹了vue實(shí)現(xiàn)抽獎效果Demo,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • Vue?3?使用moment設(shè)置顯示時間格式的問題及解決方法

    Vue?3?使用moment設(shè)置顯示時間格式的問題及解決方法

    在Vue?3中,因?yàn)檫^濾器(filter)已經(jīng)被廢棄,取而代之的是全局方法(global?method),本文給大家介紹Vue?3?使用moment設(shè)置顯示時間格式的問題及解決方法,感興趣的朋友一起看看吧
    2023-12-12
  • 詳解vue如何使用自定義指令

    詳解vue如何使用自定義指令

    在Vue的模板語法中,我們學(xué)了很多指令,當(dāng)然除了這些指令,Vue也允許我們自己定義自己的指令,所以本文就來和大家聊聊如何使用自定義指令吧
    2023-10-10
  • vuejs+element UI點(diǎn)擊編輯表格某一行時獲取內(nèi)容填入表單的示例

    vuejs+element UI點(diǎn)擊編輯表格某一行時獲取內(nèi)容填入表單的示例

    這篇文章主要介紹了vuejs+element UI點(diǎn)擊編輯表格某一行時獲取內(nèi)容填入表單的示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-10-10
  • vue?+?ele?實(shí)現(xiàn)下拉選擇框和下拉多選選擇框處理方案

    vue?+?ele?實(shí)現(xiàn)下拉選擇框和下拉多選選擇框處理方案

    這篇文章主要介紹了vue?+?ele?實(shí)現(xiàn)下拉選擇框和下拉多選選擇框處理方案,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-08-08

最新評論

洛阳市| 邳州市| 桂平市| 东宁县| 育儿| 渑池县| 青川县| 保德县| 稷山县| 岳阳市| 丽江市| 藁城市| 鹿泉市| 旬邑县| 崇州市| 京山县| 海口市| 安塞县| 高密市| 郓城县| 剑川县| 宣城市| 泰顺县| 防城港市| 无棣县| 五华县| 灵宝市| 宁陕县| 丽江市| 武乡县| 凤山市| 赤城县| 彰化市| 聊城市| 滦南县| 丹阳市| 岢岚县| 齐齐哈尔市| 高青县| 车致| 五台县|