亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Vue打包后不同版本詳細解析

 更新時間:2022年12月28日 14:42:37   作者:CamphorBloom  
vue項目打包是我們?nèi)粘=?jīng)常遇到的,下面這篇文章主要給大家介紹了關(guān)于Vue打包后不同版本詳細解析的相關(guān)資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下

vue源碼打包版本

這里選取我們開發(fā)中常見的幾個版本進行說明。

1、vue(.runtime).global(.prod).js

  • 在html頁面中通過 <script src=“...”> 標簽直接使用。
  • 通過CDN引入和npm下載的Vue就是這個版本。
  • 會暴露一個全局的Vue來使用。

(.runtime)和(.pro)表示可選項,分別指特定的運行時版本和生產(chǎn)版本。

2、vue(.runtime).esm-browser(.prod).js

  • 用于通過原生ES模塊導(dǎo)入使用 (在瀏覽器中通過 <script type="module"> 來使用)。

3、vue(.runtime).esm-bundler.js

  • 用于 webpack,rollup 和 parcel 等構(gòu)建工具。
  • 構(gòu)建工具中默認是vue.runtime.esm-bundler.js。
  • 如果我們需要解析模板template,那么需要手動指定vue.esm-bundler.js。

這里就清楚了為什么webpack對vue代碼打包時,查看運行的控制臺會出現(xiàn)下面一段警告信息:

// 默認引入的是 vue.runtime.esm-bundler.js 版本
import { createApp } from 'vue'; 
// 修改為 vue.esm-bundler 版本
import { createApp } from 'vue/dist/vue.esm-bundler';

4、vue.cjs(.prod).js

  • 服務(wù)器端渲染使用。
  • 通過require()在Node.js中使用。

運行時+編譯器 vs 僅運行時

對應(yīng)著 runtime+compiler 和 runtime-only。

在Vue的開發(fā)過程中我們有三種方式來編寫DOM元素:

  • 方式一:template模板的方式(之前經(jīng)常使用的方式)。
  • 方式二:render函數(shù)的方式,使用h函數(shù)來編寫渲染的內(nèi)容。
  • 方式三:通過.vue文件(SFC)中的template來編寫模板。

三種方式的模板如何處理:

  • 方式二中的h函數(shù)可以直接返回一個虛擬節(jié)點,也就是Vnode節(jié)點。

而方式一和方式三的template都需要有 特定的代碼 來對其進行解析:

  • 方式三.vue文件中的template可以通過在vue-loader對其進行編譯和處理。
  • 方式一種的template我們必須要通過源碼中一部分代碼來進行編譯。

因此Vue在選擇版本的時候分為 運行時+編譯器 vs 僅運行時

運行時+編譯器 包含了對template模板的編譯代碼,更加完整,但是也更大一些;

僅運行時 沒有包含對template版本的編譯代碼,相對更小一些。

Bundler 構(gòu)建功能標志

針對以上警告,參閱https://github.com/vuejs/core/blob/main/packages/vue/README.md

貼出對于webpack構(gòu)建工具的配置示例:

附:VSCode對SFC文件的支持

SFCsingle-file components (單文件組件)

plugin1:Vetur——從Vue2開發(fā)就一直在使用的,支持Vue的插件。

plugin2:Volar——官方推薦的插件(后續(xù)會基于Volar開發(fā)官方的VSCode插件)。

總結(jié)

到此這篇關(guān)于Vue打包后不同版本詳細解析的文章就介紹到這了,更多相關(guān)Vue打包后版本解析內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳細聊聊vue組件是如何實現(xiàn)組件通訊的

    詳細聊聊vue組件是如何實現(xiàn)組件通訊的

    組件間通信簡單來說就是組件間進行數(shù)據(jù)傳遞,就像我們?nèi)粘5拇螂娫?就是通訊的一種方式,下面這篇文章主要給大家介紹了關(guān)于vue組件是如何實現(xiàn)組件通訊的相關(guān)資料,需要的朋友可以參考下
    2022-05-05
  • 解決element ui el-row el-col里面高度不一致問題

    解決element ui el-row el-col里面高度不一致問題

    這篇文章主要介紹了解決element ui el-row el-col里面高度不一致問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Vue3+TS+Vant3+Pinia(H5端)配置教程詳解

    Vue3+TS+Vant3+Pinia(H5端)配置教程詳解

    這篇文章主要介紹了Vue3+TS+Vant3+Pinia(H5端)配置教程詳解,需要的朋友可以參考下
    2023-01-01
  • Element-ui 自帶的兩種遠程搜索(模糊查詢)用法講解

    Element-ui 自帶的兩種遠程搜索(模糊查詢)用法講解

    這篇文章主要介紹了Element-ui 自帶的兩種遠程搜索(模糊查詢)用法講解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • 前端Vue中常用rules校驗規(guī)則詳解

    前端Vue中常用rules校驗規(guī)則詳解

    這篇文章主要介紹了前端Vue中常用rules校驗規(guī)則詳解,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-07-07
  • 解決vue?eslint開發(fā)嚴格模式警告錯誤的問題

    解決vue?eslint開發(fā)嚴格模式警告錯誤的問題

    這篇文章主要介紹了解決vue?eslint開發(fā)嚴格模式警告錯誤的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • vue的url請求圖片的問題及請求失敗解決

    vue的url請求圖片的問題及請求失敗解決

    這篇文章主要介紹了vue的url請求圖片的問題及請求失敗解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Vue.js實現(xiàn)表格動態(tài)增加刪除的方法(附源碼下載)

    Vue.js實現(xiàn)表格動態(tài)增加刪除的方法(附源碼下載)

    Vue.js通過簡潔的API提供高效的數(shù)據(jù)綁定和靈活的組件系統(tǒng)。在前端紛繁復(fù)雜的生態(tài)中,Vue.js有幸受到一定程度的關(guān)注,下面這篇文章主要給介紹了Vue.js實現(xiàn)表格動態(tài)增加刪除的方法實例,文末提供了源碼下載,需要的朋友可以參考借鑒。
    2017-01-01
  • 自定義Vue組件打包、發(fā)布到npm及使用教程

    自定義Vue組件打包、發(fā)布到npm及使用教程

    這篇文章主要介紹了自定義Vue組件打包、發(fā)布到npm及使用教程 ,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-05-05
  • vuex中store.commit和store.dispatch的區(qū)別及使用方法

    vuex中store.commit和store.dispatch的區(qū)別及使用方法

    這篇文章主要介紹了vuex中store.commit和store.dispatch的區(qū)別及使用方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01

最新評論