Vant Weapp

有讚(Youzan)出品的微信小程序 UI 組件庫,戶外探險小程序的 UI 主力。70+ 組件、設計乾淨、過審友善。

為什麼選它

對戶外探險小程序,UI 層的需求重點是:

  • 覆蓋面廣(list / form / modal / stepper / picker / image grid 等都要)
  • 過審風險低(自家寫 component 容易被退件)
  • (包大小要小,戶外場景不該下載很久)
  • 更新活(微信平台 API 變動時要跟得上)

Vant Weapp 全部勝出。12.3k stars,有讚商業化使用,更新頻繁。

GitHub

https://github.com/youzan/vant-weapp

戶外探險旅遊小程序核心功能清單 的對應

功能用什麼 Vant 組件
#1 出團列表Card + List
#1 行程詳情Image + Tag + Cell
#2 行前 Q&ACollapse(FAQ 摺疊)+ ContactCard(私訊入口)
#3 報名表單Form + Field + Picker(日期)
#4 行前確認流程Stepper(多步進度)+ Form + Checkbox
#5 行程公告NoticeBar + Notify(重要變動)
#6 領隊資歷頁Card + Tab + Image
#11 裝備清單Checkbox + Cell
12 天氣顯示Cell + Icon

安裝

npm i @vant/weapp -S --production

或不用 npm,直接拉 source 進 miniprogram_npm/

詳見:https://vant-contrib.gitee.io/vant-weapp/#/quickstart

app.json 註冊

{
  "usingComponents": {
    "van-button": "@vant/weapp/button/index",
    "van-cell": "@vant/weapp/cell/index"
  }
}

戶外探險專屬的設計考量

圖片組件(重要)

戶外照片是核心內容,但 Vant 的 Image 組件不會自動壓縮——必須在上傳端用 we-cropper 圖片裁切上傳 + Canvas 壓縮。Vant Image 只負責顯示。

表單組件

FormPicker 處理日期 / 緊急聯絡人關係下拉等。避開複雜的自訂 input,Vant 標準組件審核風險最低

Notice 組件

NoticeBar(跑馬燈)跟 Notify(彈窗)對應 戶外探險旅遊小程序核心功能清單 的 #5 行程公告。離線時不能 push,靠出發前 cache 顯示。

vs Weui-wxss

Vant WeappWeui-wxss
stars12.3k12.4k
風格微信生態通用設計微信官方 UI 規範
組件數70+15+
客製空間大(CSS 變數豐富)小(盡量原生風格)
戶外場景適合度✅ 主力補充用

Vant 為主,遇到 Vant 沒有的標準微信元件補 Weui-wxss。

反模式

❌ 自寫所有 component(過審地雷) ❌ 用其他組件庫(如 ColorUI 風格太花,商業氣不足) ❌ 直接改 Vant source 文件(next 升級會 conflict,要透過 CSS variable)

何時不用

  • 想做 design system 級客製化 → 改用 Weui-wxss + 自寫補充
  • 包大小極度敏感 → 看哪些組件可以剝(Vant 支援按需引入)

相關概念

強連結(戶外探險專屬)

推斷連結

  • Weui-wxss ?? — 補充選項,目前 vault 沒建頁
  • ColorUI ?? — 已知的另一選項,不選

深入閱讀(外部資源)

← 回到 wiki