微信小程序工程化之路

前言

最近很長一段時間都在和前端項目構建「糾纏」在一塊兒,處理了web項目、app項目緊接着即是微信小程序,之因此把微信單獨拎出來作一篇分享,主要是由於小程序的工程化在不少細節上是區別於傳統意義上的web項目,請往下看html

準備工做

  1. 配置一臺打包機,建議弄一臺mini(具體配置根據你們的實際狀況來定,ps一下咱們公司用的16G+128的,目前來講資源已經明顯不夠用了)其次要去搭建一個jenkins服務,作任務的集中管理。
  2. 搭建一個服務,主要提供和微信的對接爲後期代碼上傳,提審等功能作基礎,關於微信的對接方式你們能夠看官網文檔第三方平臺
  3. 若是有可能的話對接一下各自公司的辦公管理工具好比企業微信、釘釘等用來作消息的通知、審覈等。
  4. 最後一點就是微信經常使用的開發套件了,就不作過多闡述。

建立和執行工做流

  1. 首先在Jenkins中建立任務,建議同時建立兩個,一個做爲開發預覽(DevelopTask),另一個做爲代碼上傳(ReleaseTask)。Jenkins任務中的配置注意下面這幾點。
  • 處理微信開發者工具登陸過時,咱們能夠經過開發輔助中提供的命令行登陸方式來獲取到受權二維碼,提供給管理者去處理。
  • DevelopTask要定時執行,由於小程序預覽二維碼會有過時的問題,因此我這裏每20分鐘會從新生成一張,咱們能夠在Jenkins的構建觸發器中設置
  • DevelopTask的腳本配置主要是上傳預覽、生成二維碼資源(Base64)、通知開發者獲取新的二維碼。
  • ReleaseTask中區別與DevelopTask的是不須要定時執行,另外咱們須要將腳本中的cli -p /Users/username/demo --preview-qr-output base64@/Users/username/code.txt命令替換成cli -u 1.0.0@/Users/username/demo --upload-desc 'initial release' --upload-info-output /Users/username/info.json
  1. 開發預覽,上面說到DevelopTask會生成預覽二維碼的base64文件,如何將這個信息通知給測試或者開發者呢?這裏我以企業微信的方式爲例,首先看下效果
    經過企業微信中的接受消息功能咱們能夠將消息作一次中轉,另外經過消息推送將新的消息推送給指定的用戶,咱們能夠在中轉服務中將二維碼信息推送給用戶,這裏有一張企業微信消息推送的流程,你們能夠借鑑一下,另外企業微信支持配置菜單相似於微信公衆號中的菜單。
  2. 版本發佈,ReleaseTask執行外以後咱們會將代碼推送到小程序的草稿庫中,這裏距離真正的提審還有三步驟,第一添加草稿到代碼模版庫,第二經過模版ID上傳小程序代碼,第三提交審覈。這裏的三個步驟因爲微信限制,咱們沒辦法在Jenkins中去操做,咱們能夠搭建中轉服務去管理。

總結

總體流程

  1. 建立Jenkins任務,處理預覽或者上傳問題
  2. 測試:生成預覽二維碼
  3. 模版發佈:上傳草稿
  4. 利用微信三方服務接口實現模版提交,提審等功能

若有不足,還望指出。願你們在前端的道路上少走彎路前端

相關文章
相關標籤/搜索