微信小程序使用app.json文件进行全局配置,决定页面文件的路径、窗口表现、设置网络超时时间、设置多tab等。
以下是一个包含所有配置选项的简单的app.json文件。
{
"pages":[
"pages/index/index",
"pages/list/list",
"pages/item/item",
"pages/search/search",
"pages/profile/profile"
],
"window":{
"navigationBarBackgroundColor":"#35495e",
"navigationBarTextStyle":"white",
"navigationBarTitleText":"电影",
"backgroundColor":"#000000",
"backgroundTextStyle":"light",
"enablePullDownRefresh":false
},
"tabBar":{
"color":"#999999",
"selectedColor":"#35495e",
"backgroundColor":"#f5f5f5",
"borderStyle":"white",
"list":[
{
"text":"首页",
"pagePath":"pages/index/index",
"iconPath":"images/index.png",
"selectedIconPath":"images/index-actived.png"
},
{
"text":"搜索",
"pagePath":"pages/search/search",
"iconPath":"images/search.png",
"selectedIconPath":"images/search-actived.png"
},
{
"text":"我的",
"pagePath":"pages/profile/profile",
"iconPath":"images/profile.png",
"selectedIconPath":"images/profile-actived.png"
}
],
"position":"bottom"
},
"networkTimeout":{
"request":10000,
"connectSocket":10000,
"uploadFile":10000,
"downloadFile":10000
},
"debug":true
}
上述配置项的配置说明如表21-3所示。
表21-3 小程序配置选项属性说明
pages配置项用于接收一个数组,每一项都是字符串,以指定小程序由哪些页面组成。每一项代表对应页面的“路径+文件名”信息,数组的第一项代表小程序的初始页面。小程序中新增/减少页面,都需要对pages数组进行修改。文件名不需要写扩展名,因为框架会自动寻找路径中的.json、js、.wxml、.wxss文件进行整合。
window配置项用于设置小程序的状态栏、导航栏、标题、窗口背景色。可设置的属性说明如表21-4所示。
表21-4 window属性说明
如果开发的小程序是一个多tab应用(客户端窗口的底部有tab栏可以切换页面),那么可以通过tabBar配置项指定tab栏的表现,以及tab切换时显示的对应页面。tabBar是一个数组,只能配置最少2个、最多5个tab,tab按数组的顺序排序。tabBar的属性说明如表21-5所示。
表21-5 tabBar属性说明
networkTimeout配置项可以设置各种网络请求的超时时间,说明如表21-6所示。
表21-6 networkTimeout属性说明
debug配置项可以在开发者工具中开启debug模式,在开发者工具的控制台面板,调试信息以info的形式给出,其信息有Page的注册、页面路由、数据更新、事件触发等。它用于帮助开发者快速定位一些常见的问题。