十年河東,十年河西,莫欺少年窮
學無止境,精益求精
微信小程序配置文件分為兩種,全局配置文件和頁面配置文件。
1、全局配置文件,app.json,詳細參考:https://developers.weixin.qq.com/miniprogram/dev/reference/configuration/app.html
本文主要闡述全局配置文件的 pages、window、tabBar 配置項
pages
用於指定小程序由哪些頁面組成,每一項都對應一個頁面的 路徑(含文件名) 信息。文件名不需要寫文件后綴,框架會自動去尋找對應位置的 .json
, .js
, .wxml
, .wxss
四個文件進行處理。
在微信開發工具中有個小竅門可以快速生成頁面,如下:
在app.json中輸入要新建的頁面路徑,比如:
"pages/GroupUser/GroupUser"
然后點擊 Ctrl+S 微信開發工具就會為開發者生產相關的頁面,如下:
app.json 中最上面的一個頁面路徑為小程序的默認入口頁面。
2、window 配置項
用於設置小程序的狀態欄、導航條、標題、窗口背景色。
window 配置項常用屬性如下:
"navigationBarBackgroundColor": "#ccf"

"navigationBarTextStyle":"white",
設置導航欄標題顏色,僅支持 black
/ white
"navigationBarTitleText": "陳三毛的小程序",
設置導航欄的標題
"enablePullDownRefresh":true,
用於設置下拉刷新
"backgroundTextStyle":"dark"
用於設置下拉刷新的樣式
"backgroundColor": "#ccc",
3、tabBar 配置項
如果小程序是一個多 tab 應用(客戶端窗口的底部或頂部有 tab 欄可以切換頁面),可以通過 tabBar 配置項指定 tab 欄的表現,以及 tab 切換時顯示的對應頁面。
tabBar 配置項用於在小程序底部導航菜單的生成
"tabBar": { "list": [{ "pagePath": "pages/index/index", "text": "陳大六", "iconPath": "/tabBarImg/personal.png", "selectedIconPath": "/tabBarImg/personal-active.png" }, { "pagePath": "pages/demo/demo", "text": "陳小六", "iconPath": "/tabBarImg/store.png", "selectedIconPath": "/tabBarImg/store-active.png" } ] },
效果如下:
上述配置中:其中 list 接受一個數組,只能配置最少 2 個、最多 5 個 tab。
全局配置項中還有:
networkTimeout
各類網絡請求的超時時間,單位均為毫秒。
debug
可以在開發者工具中開啟 debug
模式,在開發者工具的控制台面板,調試信息以 info
的形式給出,其信息有 Page 的注冊,頁面路由,數據更新,事件觸發等。可以幫助開發者快速定位一些常見的問題
functionalPages
插件所有者小程序需要設置這一項來啟用插件功能頁。
subpackages
啟用分包加載時,聲明項目分包結構。
寫成 subPackages 也支持。
workers
基礎庫 1.9.90 開始支持,低版本需做兼容處理。
使用 Worker 處理多線程任務時,設置 Worker
代碼放置的目錄
resizable
在 iPad 上運行的小程序可以設置支持屏幕旋轉。
在 PC 上運行的小程序,用戶可以按照任意比例拖動窗口大小,也可以在小程序菜單中最大化窗口
PermissionObject 結構
{ "pages": ["pages/index/index"], "permission": { "scope.userLocation": { "desc": "你的位置信息將用於小程序位置接口的效果展示" // 高速公路行駛持續后台定位 } } }
style
基礎庫 2.8.0 開始支持,低版本需做兼容處理。
微信客戶端 7.0 開始,UI 界面進行了大改版。小程序也進行了基礎組件的樣式升級。app.json 中配置 "style": "v2"
可表明啟用新版的組件樣式。
本次改動涉及的組件有 button icon radio checkbox switch slider
。可前往小程序示例進行體驗
useExtendedLib
基礎庫 2.2.1 開始支持,低版本需做兼容處理。
最新的 nightly 版開發者工具開始支持,同時基礎庫從支持 npm 的版本(2.2.1)起支持
指定需要引用的擴展庫。目前支持以下項目:
指定后,相當於引入了對應擴展庫相關的最新版本的 npm 包,同時也不占用小程序的包體積。rc工具版本支持分包引用。用法如下:
{ "useExtendedLib": { "kbone": true, "weui": true } }
embeddedAppIdList
指定小程序可通過wx.openEmbeddedMiniProgram打開的小程序名單
{ "embeddedAppIdList": ["wxe5f52902cf4de896"] }
lazyCodeLoading
目前僅支持值 requiredComponents
,代表開啟小程序「按需注入」特性。
更多配置,詳細參考:https://developers.weixin.qq.com/miniprogram/dev/reference/configuration/app.html
@天才卧龍的博客