溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

在Gulp基礎(chǔ)構(gòu)建微信小程序的示例分析

發(fā)布時間:2021-06-11 11:10:01 來源:億速云 閱讀:176 作者:小新 欄目:移動開發(fā)

這篇文章主要介紹在Gulp基礎(chǔ)構(gòu)建微信小程序的示例分析,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

基于Gulp構(gòu)建的微信小程序開發(fā)工作流

適用場景

三種開發(fā)方案,各有優(yōu)劣。使用第三方框架開發(fā),可以享受框架帶來的開發(fā)便利,但對于小程序新增的諸多特性和功能,比如WXS模塊、自定義組件插件等,受制于第三方框架,無法使用。

而原生小程序的開發(fā)模式,又過于簡陋,就樣式來說,寫慣了less,stylus和sass的同學(xué)一定無法忍受wxss的這種寫法,基于此,決定使用gulp自動化工具來構(gòu)建一套微信小程序開發(fā)的基礎(chǔ)模板,在完全保留微信小程序功能和特性的基礎(chǔ)上,又可以的使用less來寫樣式,同時加入圖片壓縮,命令行快速創(chuàng)建模板等特性,如此開發(fā),快哉,快哉!

特性

  • 基于gulp+less構(gòu)建的微信小程序工程項目

  • 項目圖片自動壓縮

  • ESLint代碼檢查

  • 使用命令行快速創(chuàng)建page、templatecomponent

Getting Started

0. 開始之前,請確保已經(jīng)安裝node和npm,全局安裝gulp-cli
$ npm install --global gulp-cli
1. 下載代碼
$ git clone https://github.com/YangQiGitHub/wx-miniprogram-boilerplate.git
2. 進(jìn)目錄,安裝依賴
$ cd wx-miniprogram-boilerplate && npm install
3. 編譯代碼,生成dist目錄,使用開發(fā)者工具打開dist目錄
$ npm run dev
4. 新建page、template或者component
  gulp auto -p mypage           創(chuàng)建名為mypage的page文件
  gulp auto -t mytpl            創(chuàng)建名為mytpl的template文件
  gulp auto -c mycomponent      創(chuàng)建名為mycomponent的component文件
  gulp auto -s index -p mypage  復(fù)制pages/index中的文件創(chuàng)建名稱為mypage的頁面
5. 上傳代碼前編譯
$ npm run build
6. 上傳代碼,審核,發(fā)版

工程結(jié)構(gòu)

wx-miniprogram-boilerplate
├── dist         // 編譯后目錄
├── node_modules // 項目依賴
├── src 
│    ├── components // 微信小程序自定義組件
│    ├── images     // 頁面中的圖片和icon
│    ├── pages      // 小程序page文件
│    ├── styles     // ui框架,公共樣式
│    ├── template   // 模板
│    ├── utils      // 公共js文件
│    ├── app.js
│    ├── app.json
│    ├── app.less
│    ├── project.config.json // 項目配置文件
│    └── api.config.js       // 項目api接口配置
├── .gitignore
├── .eslintrc.js               // ESLint
├── package-lock.json
├── package.json
└── README.md

Gulp說明

Tasks:
  dev              開發(fā)編譯,同時監(jiān)聽文件變化
  build            整體編譯

  clean            清空產(chǎn)出目錄
  wxml             編譯wxml文件(僅僅copy)
  js               編譯js文件,同時進(jìn)行ESLint語法檢查
  json             編譯json文件(僅僅copy)
  wxss             編譯less文件為wxss
  img              編譯壓縮圖片文件
  watch            監(jiān)聽開發(fā)文件變化
  
  auto             自動根據(jù)模板創(chuàng)建page,template或者component(小程序自定義組件)

gulp auto 

選項:
  -s, --src        copy的模板                     [字符串] [默認(rèn)值: "_template"]
  -p, --page       生成的page名稱                                       [字符串]
  -t, --template   生成的template名稱                                   [字符串]
  -c, --component  生成的component名稱                                  [字符串]
  --msg            顯示幫助信息                                           [布爾]

示例:
  gulp auto -p mypage           創(chuàng)建名為mypage的page文件
  gulp auto -t mytpl            創(chuàng)建名為mytpl的template文件
  gulp auto -c mycomponent      創(chuàng)建名為mycomponent的component文件
  gulp auto -s index -p mypage  復(fù)制pages/index中的文件創(chuàng)建名稱為mypage的頁面
Q&A

Q: 為什么工作流中沒有加入js轉(zhuǎn)換,樣式補(bǔ)全以及代碼壓縮?
A: 微信開發(fā)者工具中自帶babel將ES6轉(zhuǎn)ES5,樣式補(bǔ)全以及js代碼壓縮等功能,在此工作流中不做額外添加。
在Gulp基礎(chǔ)構(gòu)建微信小程序的示例分析

Q: _template目錄的文件有什么用?
A: 使用gulp auto命令自動生成文件,-s參數(shù)可以指定copy的對象,默認(rèn)情況下是以對應(yīng)目錄下文件夾為_template中的文件為copy對象的。開發(fā)者可以根據(jù)業(yè)務(wù)需求,自定義_template下的文件。

Q: _template目錄的文件是否會被編譯到dist目錄?
A: 不會。

TODO

  • [x] 代碼注釋

  • [x] 規(guī)范命令行使用

  • [x] eslint

  • [ ] 引入常用的CSS庫,比如weui之類的

以上是“在Gulp基礎(chǔ)構(gòu)建微信小程序的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI