首頁  >  文章  >  web前端  >  詳細解讀Vue如何設定打包工具

詳細解讀Vue如何設定打包工具

亚连
亚连原創
2018-06-11 17:31:272698瀏覽

本篇文章主要介紹了詳解Vue快速零配置的打包工具-parcel,現在分享給大家,也給大家做個參考。

本文介紹了Vue快速零配置的打包工具-parcel,分享給大家,具體如下:

特性

  1. 快速打包

  2. 打包所有資源

  3. #自動轉換

  4. 程式碼分割

  5. #程式碼分割

模組熱替換

的錯誤記錄

如何運作

Parcel 將資源樹轉換成套件(bundles) 樹。許多其它的打包工具基本上是基於 JavaScript 資源,還有附加在其上的其它格式的資源。例如,在 JS 檔案中內聯成字串。 Parcel是對檔案類型無感知的,它能以你所期待的方式那樣與任意類型的資源工作,且毋須配置。

建構資源樹

Parcel 接受單一入口資源作為輸入,可以是任意型別:JS、HTML、CSS、圖片檔案等等。在 Parcel 中定義了許多不同的資源類型,它知道如何去處理特定的檔案類型。資源會被解析,資源的依賴會被提取,資源會被轉換成最終編譯好的形態。此過程創建了一個資源樹。

建構檔案束樹一旦資源樹被建構好,資源就會被放置在檔案束樹中。首先一個入口資源會被創建成一個文件束,然後動態的 import() 會被創建成子文件束 ,這引發了代碼的拆分。當不同類型的文件資源被引入,兄弟文件束就會被創建。例如你在 JavaScript 中引入了 CSS 文件,那它就會被放置在一個與 JavaScript 文件對應的兄弟文件束中。如果資源被多於一個文件束引用,它會被提升到文件束樹中最近的公共祖先中,這樣該資源就不會被多次打包。

打包

在文件束樹被建構之後,每個文件束都會被 packager 寫到一個特定文件類型的文件中。 packagers 知道如何從每個資源中將程式碼合併起來,產生到最終被瀏覽器載入的檔案中。

設定

初始化項目

 npm install -g parcel
 mkdir xxx && cd xxx && npm init -y

轉換

Babel

npm install babel-preset-env --save-dev

根目錄設定.babelrc

 {
  "presets": ["env"]
 }

PostCSS

npm install postcss-modules autoprefixer --save-dev

根目錄配置.postcssrc

 {
  "modules": true,
  "plugins": {
   "autoprefixer": {
    "grid": true
   }
  }
 }

支援vue

npm install parcel-plugin-vue --save-dev

新增entry

 import App from './App.vue'
 import router from './router/index.js'
 import './assets/js/rem.js'
 window.onload = () => {
  const vm = new Vue({
   el: '#app',
   router,
   render: h => h(App)
  })
 }

設定index.html

 <body>
  <p id="app"></p>
  <script src="入口文件"></script>
 </body>

配置路由(代碼拆分--懶加載)

 {
   path: &#39;home&#39;,
   component: () =>import(&#39;../pages/home.vue&#39;)
 }

import()返回的是一個promise,所以也可以用async/await 語法,當你想在本地使用async/await 語法,請介紹babel-polyfill

區分生產環境與開發環境,配置package.json.

dev --- 開發環境

build --- 生產環境

 "scripts": {
   "dev": "parcel index.html -p 3700",
   "build": "parcel build index.html"
  }

大功告成

訪問http://localhost:3700/home

此demo是vue parcel grid stylus完成: parcel-vue

上面是我整理給大家的,希望今後對大家有幫助。 相關文章:

在vue.js中如何取得select中的value值(詳細教學)

##在Vue中如何使用slot實作插槽分發內容

在vue中如何實作封裝可重複使用的元件

###在JavaScript中如何實作判斷日期時間差############在vue2.0子元件中如何實作改變props值,並向父元件傳值######

以上是詳細解讀Vue如何設定打包工具的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn