Vue CLI 是一個基于 Vue.js 進行快速開發的完整系統,提供:
* 通過 @vue/cli 搭建交互式的項目腳手架。
* 通過 @vue/cli + @vue/cli-service-global 快速開始零配置原型開發。
* 一個運行時依賴 (@vue/cli-service),該依賴:
* 可升級;
* 基于 webpack 構建,并帶有合理的默認配置;
* 可以通過項目內的配置文件進行配置;
* 可以通過插件進行擴展。
* 一個豐富的官方插件集合,集成了前端生態中最好的工具。
* 一套完全圖形化的創建和管理 Vue.js 項目的用戶界面。
Vue CLI 致力于將 Vue 生態中的工具基礎標準化。它確保了各種構建工具能夠基于智能的默認配置即可平穩銜接,這樣你可以專注在撰寫應用上,而不必花好幾天去糾結配置的問題。與此同時,它也為每個工具提供了調整配置的靈活性,無需 eject。
# 該系統的組件
Vue CLI 有幾個獨立的部分——如果你看到了我們的源代碼
,你會發現這個倉庫里同時管理了多個單獨發布的包。
## CLI
CLI (@vue/cli) 是一個全局安裝的 npm 包,提供了終端里的 vue 命令。它可以通過 vue create 快速創建一個新項目的腳手架,或者直接通過 vue serve 構建新想法的原型。你也可以通過 vue ui 通過一套圖形化界面管理你的所有項目。我們會在接下來的指南中逐章節深入介紹。
## CLI 服務
CLI 服務 (@vue/cli-service) 是一個開發環境依賴。它是一個 npm 包,局部安裝在每個 @vue/cli 創建的項目中。
CLI 服務是構建于 webpack和 webpack-dev-server之上的。它包含了:
* 加載其它 CLI 插件的核心服務;
* 一個針對絕大部分應用優化過的內部的 webpack 配置;
* 項目內部的 vue-cli-service 命令,提供 serve、build 和 inspect 命令。
如果你熟悉 create-react-app的話,@vue/cli-service 實際上大致等價于 react-scripts,盡管功能集合不一樣。
CLI 服務章節涵蓋了它的具體用法。
## CLI 插件
CLI 插件是向你的 Vue 項目提供可選功能的 npm 包,例如 Babel/TypeScript 轉譯、ESLint 集成、單元測試和 end-to-end 測試等。Vue CLI 插件的名字以 @vue/cli-plugin- (內建插件) 或 vue-cli-plugin- (社區插件) 開頭,非常容易使用。
當你在項目內部運行 vue-cli-service 命令時,它會自動解析并加載 package.json 中列出的所有 CLI 插件。
插件可以作為項目創建過程的一部分,或在后期加入到項目中。它們也可以被歸成一組可復用的 preset。我們會在插件和 preset 章節進行深入討論。