一份超級詳細的Vue-cli3.0使用教程[趕緊來試試!]

OBKoro1發表於2018-11-15

前言

在vue-cli 2.X的時候,也寫過一篇類似的文章,在八月份的時候vue-cli已經更新到了3.X,新版本的腳手架,功能灰常強大,試用過後非常喜歡,寫篇教程來幫助各位踩一下坑。

游泳、健身瞭解一下:部落格前端積累文件公眾號GitHub

主要內容:

  1. 零配置啟動/打包一個.vue檔案
  2. 詳細的搭建過程
  3. 重點推薦:使用圖形化介面建立/管理/執行專案

安裝:

解除安裝舊版本:

如果你事先已經全域性安裝了舊版本的vue-cli(1.x 或 2.x),你需要先解除安裝它:

npm uninstall vue-cli -g
複製程式碼

Node版本要求:

3.x需要在Node.js8.9或更高版本(推薦8.11.0+),點選這裡可以安裝node

大多數人都安裝過了node,使用下面的命令列查詢你的node版本:

node -v
複製程式碼

如果你的版本不夠,可以使用下面的命令列來把Node版本更新到最新的穩定版

npm install -g n // 安裝模組 這個模組是專門用來管理node.js版本的
n stable // 更新你的node版本
複製程式碼

mac下,更新版本的時候,如果提示你許可權不夠:

sudo n stable // 我就遇到了
複製程式碼

安裝vue-cli:

npm install -g @vue/cli // 安裝cli3.x
vue --version // 查詢版本是否為3.x
複製程式碼

如果cli3.x用的不舒服,cli3也能使用2.x模板

npm install -g @vue/cli-init // 安裝這個模組
// 就可以使用2.x的模板:vue init webpack my-project
複製程式碼

零配置啟動/打包一個.vue檔案:

安裝擴充套件:

npm install -g @vue/cli-service-global
複製程式碼

安裝完擴充套件之後,可以隨便找個資料夾建一個如下方示例的.vue檔案,然後跑起來:

vue serve App.vue // 啟動服務
vue build App.vue // 打包出生產環境的包並用來部署
複製程式碼

如下圖,只需一個.vue檔案,就能迅速啟動一個服務:

如圖所示,服務啟動的時候回生成一個node_modules包,稍微測試了一下,服務支援ES6語法和熱更新,打包的時候會生成一個dist資料夾。(新建一個test.vue檔案也只有一個node_modules/dist資料夾)

這是個很棒的功能,用於開發一個庫、元件,做一些小demo等都是非常適合的

一份超級詳細的Vue-cli3.0使用教程[趕緊來試試!]


第一次建立專案:

1. 命令列:

vue create hello-cli3 
複製程式碼
  • hello-cli3是資料夾名字,如果不存在會自動建立資料夾,如果存在會安裝到那個資料夾中。

  • 相比2.x的時候需要自己手動建立一個資料夾,這裡也算是一個小優化吧。

2. 選擇模板:

  • 一開始只有兩個選項: default(預設配置)和Manually select features(手動配置)

    預設配置只有babeleslint其他的都要自己另外再配置,所以我們選第二項手動配置。

  • 在每次選擇手動配置之後,會詢問你是否儲存配置,也就是圖片中的koro選項,這樣以後我們在進行建立專案的時候只需使用原先的配置就可以了,而不用再進行配置。

一份超級詳細的Vue-cli3.0使用教程[趕緊來試試!]

3. 選擇配置:

  • 根據你的專案需要來選擇配置,空格鍵是選中與取消,A鍵是全選

      ? Check the features needed for your project: (Press <space> to select, <a> to toggle all, <i> to invert selection) 
      // 檢查專案所需的功能:(按<space>選擇,<a>切換所有,<i>反轉選擇)
      >( ) TypeScript                                 // 支援使用 TypeScript 書寫原始碼
       ( ) Progressive Web App (PWA) Support          // PWA 支援
       ( ) Router                                     // 支援 vue-router
       ( ) Vuex                                       // 支援 vuex
       ( ) CSS Pre-processors                         // 支援 CSS 前處理器。
       ( ) Linter / Formatter                         // 支援程式碼風格檢查和格式化。
       ( ) Unit Testing                               // 支援單元測試。
       ( ) E2E Testing  
    複製程式碼

4. 選擇css前處理器:

  • 如果你選擇了Css前處理器選項,會讓你選擇這個

      ? Pick a CSS pre-processor (PostCSS, Autoprefixer and CSS Modules are supported by default):
      // 選擇CSS前處理器(預設支援PostCSS,Autoprefixer和CSS模組):
      > SCSS/SASS
        LESS
        Stylus
    複製程式碼

5. 是否使用路由的history模式:

  • 這裡我建議選No,這樣打包出來丟到伺服器上可以直接使用了,後期要用的話,也可以自己再開起來。

  • 選yes的話需要伺服器那邊再進行設定。

      Use history mode for router? (Requires proper server setup for index fallback in production) 
      // 路由使用history模式?(在生產環境中需要適當的伺服器設定以備索引)
    複製程式碼

6. 選擇Eslint程式碼驗證規則:

> ESLint with error prevention only
  ESLint + Airbnb config
  ESLint + Standard config
  ESLint + Prettier
複製程式碼

7. 選擇什麼時候進行程式碼規則檢測:

  • 建議選儲存就檢測,等到commit的時候,問題可能都已經積累很多了。

  • 之前寫了篇VsCode儲存時自動修復Eslint錯誤推薦一下。

      ? Pick additional lint features: (Press <space> to select, <a> to toggle all, <i> to invert selection)
      >( ) Lint on save // 儲存就檢測
       ( ) Lint and fix on commit // fix和commit時候檢查
    複製程式碼

8. 選擇e2e測試:

? Pick a E2E testing solution: (Use arrow keys)
❯ Cypress (Chrome only) 
  Nightwatch (Selenium-based) 
複製程式碼

9. 把babel,postcss,eslint這些配置檔案放哪:

  • 通常我們會選擇獨立放置,讓package.json乾淨些

      ? Where do you prefer placing config for Babel, PostCSS, ESLint, etc.? (Use arrow keys)
      > In dedicated config files // 獨立檔案放置
        In package.json // 放package.json裡
    複製程式碼

10. 是否儲存配置:

Save this as a preset for future projects? (Y/n) // 是否記錄一下以便下次繼續使用這套配置
// 選儲存之後,會讓你寫一個配置的名字:
Save preset as:  name // 然後你下次進入配置可以直接使用你這次的配置了
複製程式碼

11. 下載依賴

12. webpack配置的目錄不見了:

一起來看一下新專案的結構(下圖),會發現2.x的webpack配置的目錄不見了,也就是沒有build、config這兩個資料夾了:

  • 這種方式的優勢對小白來說非常友好,不會一上來就兩個資料夾,一堆檔案,看著腦袋都大了。

  • 然後在引用別人的配置的時候,也非常方便,直接將檔案複製過來就好了。

  • 在自定義一下webpack的配置,我們需要在根目錄新建一個vue.config.js檔案,檔案中應該匯出一個物件,然後進行配置,詳情查閱官方文件

      // vue.config.js
      module.exports = {
        // 選項...
      }
    複製程式碼
  • 還有一些小變動像:static資料夾改為public了,router資料夾變成了單個檔案之類的(我之前一直這麼做,嘿嘿)。

    一份超級詳細的Vue-cli3.0使用教程[趕緊來試試!]

13.啟動專案:

  • 啟動專案:npm run serve // 不是之前的 npm run dev

  • 開啟http://localhost:8080

    一份超級詳細的Vue-cli3.0使用教程[趕緊來試試!]


使用圖形化介面建立/管理/執行專案:

啟動圖形化介面

vue ui 
複製程式碼
  • 這是個全域性的命令 在哪個資料夾都可以開啟

  • 介面(下圖),重要的專案可以收藏起來(置頂):

    一份超級詳細的Vue-cli3.0使用教程[趕緊來試試!]

建立專案和匯入專案:

  1. 目錄選中之後,匯入專案點選下面的匯入就可以了。

    一份超級詳細的Vue-cli3.0使用教程[趕緊來試試!]

  2. 建立專案,填一個資料夾名字:

    一份超級詳細的Vue-cli3.0使用教程[趕緊來試試!]

  3. 然後選一下預先儲存好的設定就可以了,非常方便,建議採用圖形介面來建立專案:

    一份超級詳細的Vue-cli3.0使用教程[趕緊來試試!]

專案管理:

當我們點選hello -cli3專案,就會進入專案管理的介面

1. 儀表盤:

  • 這個儀表盤,主要是為了我們操作方便而設定的

  • 可以點選右上角的按鈕,來新增/移動這些功能選項。

    一份超級詳細的Vue-cli3.0使用教程[趕緊來試試!]

2. vue-cli3.x外掛:

  • vue-cli3的外掛功能,詳情瞭解官方文件

    一份超級詳細的Vue-cli3.0使用教程[趕緊來試試!]

  • cli3外掛安裝的過程:

    cli3外掛安裝的過程

3. 專案依賴

  • 直接在圖形介面管理依賴很舒服了!

  • 安裝依賴的時候,要記得選擇開發依賴/執行依賴!

    一份超級詳細的Vue-cli3.0使用教程[趕緊來試試!]

4. 專案配置

  • 可以對cli進行一些配置、Eslint規則修改:

    一份超級詳細的Vue-cli3.0使用教程[趕緊來試試!]

5. 任務:

  • serve 執行專案,點選直接執行,再也不用輸入命令了!

  • 可以清楚的看到各個模組用了多久,方便我們針對性的進行優化

    一份超級詳細的Vue-cli3.0使用教程[趕緊來試試!]

  • build 打包專案:這裡主要展示了圖表的功能,比以前2.x生成報告更加直觀,超級棒!

    一份超級詳細的Vue-cli3.0使用教程[趕緊來試試!]

6. 其他

  • 夜間風格介面,我更喜歡這個介面

  • 直接開啟編輯器,很棒了!

  • 還有一些亂七八糟的按鈕

    一份超級詳細的Vue-cli3.0使用教程[趕緊來試試!]


結語

可以說很認真了,希望大家看完能夠有些收穫,趕緊試試新版的vue-cli吧

希望看完的朋友可以點個喜歡/關注,您的支援是對我最大的鼓勵。

部落格前端積累文件公眾號GitHub

以上2018.11.10

參考資料:

vue-cli3官方文件

vue-cli3.0搭建與配置

相關文章