淺談自動化構建之grunt

メSerendipity發表於2021-01-27

自動化構建

開發行業的自動化構建 一句話把原始碼轉化為生產程式碼,作用是脫離執行環境相容帶來的問題開發階段使用提高效率的語法,規範

和標準,構建轉換那些不被支援的特性轉化成能夠執行的程式碼。

一.簡單的自動化構建案例

簡介:通過scss增強css的程式設計性,以及通過執行一些簡單的命令列命令搭建啟動服務,熱載入,編譯的簡單的自動化構建功能,功能

比較簡單,只做步驟說明用法及npm scripts程式碼截圖展示....

首先安裝sass yarn add sass --dev

通過node-modules找到.bin下面的sass路徑 執行.\node_modules\.bin\sass命令 會指出具體用法,如下圖所示可以看 要有個輸入路

徑和輸出路徑

執行指令.\node_modules\.bin\sass scss/main.scss css/style.css (輸入輸出為我自己的路徑)每次都要去接收這些複雜的命令,不切

合實際,npm Scripts來解決這些問題

安裝browser-sync --dev模組 用於啟動測試伺服器

preserve鉤子命令 會在鉤子命令執行serve之前去執行"preserve":"yarn build",也可以新增同時執行的模組 yarn add npm-run-all --

dev

二.常用的自動化構建工具

目前最流行的自動化構建工具grunt gulp fis

grunt最完善的構建工具,用官方的一句話說,grunt能夠幫你構建你想要做的任何一件事情,缺點:基於磁碟讀寫,處理的環節越多,

檔案讀寫的次數較多,對於大型專案構建速度比較慢。

gulp解決了grunt中構建速度比較慢的問題,gulp基於記憶體去實現的,預設同時去執行多個任務,實現方式相對於grunt更加直觀易懂,

外掛系統也基本完善,是目前最流行的自動化構建工具。

fis百度團隊推出的一款構建系統,更像是一種捆綁套餐,資源載入,程式碼部署,效能優化都可以輕而易舉的完成,國內很受歡迎,比較

適合新手。

三.grunt的基本使用

1.yarn init -y

2.yarn add grunt

3.根目錄建立gruntfile.js檔案

4.執行yarn grunt foo (yarn會找到node_modules中的命令,foo為我們註冊的名字)

Grunt標記任務失敗

在我們構建任務時。例如我們的檔案找不到了,那我們就可以將這個任務標記為失敗的任務具體實現,我們可以標記這個任務為return

false,具體實現如下圖所示

Grunt配置選項方法

grunt新增了一些配置選項的api叫做initConfig,例如我們要壓縮檔案時,需要我們配置壓縮檔案的檔案路徑

Grunt 多目標任務

理解為子任務概念,後續通過grunt實現構建任務時非常有用

Grunt 外掛的使用

grunt的核心,封裝了一些通用的構建任務,下面舉個外掛例子,清除專案中的臨時檔案

yarn add grunt-contrib-clean

yarn grunt clean

Grunt 常用外掛案例

yarn add grunt-sass sass --dev
yarn add grunt-babel @babel/core @babel/preset-env --dev
隨著模組的複雜程度的增加,減少loadNpmTasks的使用load-grunt-tasks模組
yarn add load-grunt-tasks --dev
yarn add grunt-contrib-watch --dev 監聽編譯
yarn grunt

相關文章