微信小程序根目录下有一个app.json文件,其用于对微信小程序进行全局配置
进而决定
- 页面文件的路径
- 窗口表现
- 网络超时时间
- 底部tab栏的表现等
app.json常用的配置项
包含了部分常用配置项的app.json
{
"pages" : ["pages/index/index","pages/logs/logs"],
"windows": {
"navigationBarTitleText":"Demo"
}
"tabBar":{
"list":[
{
"pagePath":"pages/index/index",
"text":"首页"
},
{
"pagePath":"pages/logs/logs",
"text":"日志"
}
]
},
"networkTimeout":{
"request":10000,
"downloadFile":10000
},
"debug":true,
"navigateToMiniProgramAppidList":["wxe5f52902cf4de896"]
}
1.pages配置项
在示例2-1中,pages用于指定微信小程序由哪些页面组成,其值是一个数组,数组中每一项都是一个页面的路径信息
填写pages配置项时,需要遵循以下3个原则
- 数组的第一项代表微信小程序的初始页面(首页)
- 微信小程序中新增/减少页面时,需要对pages数组进行修改
- 不需要写文件后缀,框架会自动寻找对应位置的.json、.js、.wxml、.wxss文件
如果在pages中添加一个配置项“pages/home/home”,就会看到开发者工具自动在pages目录下创建了home目录,并且目录下有home.wxml、home.wxss、home.js、home.json 4个文件
2.window配置项
Window配置项用于确定微信小程序的状态栏、导航条、标题、窗口背景色等
在未进行配置时,会使用系统的默认配置
表2.2列出了window配置项的常用配置
{
"window":{
"navigationBarBackgroundcolor":"#ffffff",
"navigationBarTextStyle":"back",
"navigationBarTitleText":"miniprogramedeveloper",
"backgroundColor":"#eeeeee",
"backgroundTextStyle":"dark"
}
}
我们设置了导航栏背景色为白色,导航栏标题为“miniprogramedeveloper”,字体颜色为黑色,窗口背景色为“#eeeeee”,下拉loading的颜色为“dark”,也就是深灰色。
3.tabBar配置项
tabBar配置项用来设置底部tab栏的表现以及tab切换时显示的页面。常见的tabBar配置项如表2.3所示
配置项 | 类型 | 必填 | 默认值 | 描述 |
---|---|---|---|---|
color | HexColor | 是 | tab上的文字默认颜色,仅支持十六制颜色 | |
selectedColor | HexColor | 是 | tab上的文字选中时的颜色,仅支持十六进制颜色 | |
backgroundColor | HexColor | 是 | tab的背景色,仅支持十六进制颜色 | |
borderStyle | String | 否 | black | tabbar上边框的颜色,仅支持black/white |
list | Array | 是 | tab的列表,详见list属性说明,最少2个tab,最多5个tab | |
position | String | 否 | bottom | tabBar的位置,仅支持bottom/top |
其中,list是一个数组,用于配置标签页,标签页按数组顺序排序,数组中的每项都是一个对象
list对象的配置如表2.4所示
对象 | 类型 | 必填 | 描述 |
---|---|---|---|
pagePath | String | 是 | 页面路径,必须在pages中先定义 |
text | HexColor | 是 | tab上按钮的文字 |
iconPath | HexColor | 是 | - 图片路径,icon的大小限制为40KB,建议尺寸为81px * 81px,不支持网络图片 - 当postion为top时,不显示icon |
selecterIconPath | String | 否 | - 选中的图片路径,icon的大小限制为40KB,建议尺寸为81px * 81px,不支持网络图片 - 当position为top时,不显示icon |
tabBar配置见示例2-3
{
"tabBar":{
"color":"#dadada",
"selecterColor":"#09bb07",
"backgroundColor":"#fff",
"borderStyle":"black",
"list":[
{
"pagePath":"pages/index/index",
"text":"首页",
"iconPath":"images/icon_1_n.png",
"selectedIconPath":"images/icon_1_a.png"
},{
"pagePath":"pages/index/index",
"text":"日志",
"iconPath":"images/icon_2_n.png",
"selectedIconPath":"images/icon_2_a.png"
}
]
}
}
- 配置tabBar文字颜色为“#dadada”
- 选中tab的颜色为“#09bb07”
- tabBar背景色为“#fff”(纯白色)
- 上边框颜色为“black”(黑色)
- 然后设置了两个tab页,每个tab页中分别设置tab页的路径、显示的文字和对应的图标路径
- 图标路径有两个,微信小程序会根据选中的状态加载对应的图标
4.networkTimeout配置项
networkTimeout配置项用于设置网络请求超时时间,单位为ms
在示例2-1中,设置了请求超时时间10000ms,也就是10s,文件下载超时时间也是10s
如果不设置网络请求超时间,则会使用操作系统内核或者WebServer的设定值
networkTimeout配置项如表2.5所示
配置项 | 类型 | 必填 | 默认值 | 描述 |
---|---|---|---|---|
request | Number | 否 | 60000 | wx.request的超时时间,单位:ms |
connectSocket | Number | 否 | 60000 | wx.connectSocket的超时时间,单位:ms |
uploadFile | Number | 否 | 60000 | wx.uploadFile的超时时间,单位:ms |
downloadFile | Number | 否 | 60000 | wx.downloadFile的超时时间,单位:ms |
5.debug配置项
在app.json中设置debug为true,则开启了调试模式
在开发者工具的控制台面板,调试信息以info的形式给出,其信息有
- Page的注册
- 页面路由
- 数据更新
- 事件触发等
可以帮助开发者快速定位一些常见的问题
图2.1是开启调试模式后控制台的输出
6.navigateToMiniProgramAppidList配置项
微信小程序从基础库2.4.0开始支持某个微信小程序跳转到其他微信小程序
如果要做微信小程序跳转
需要在navigateToMiniProgramAppidList中配置需要跳转的微信小程序AppID
最多允许填写10个
{
"navigateToMiniProgramAppidList":["wxe5sd54f5sdfsdf","wxe565656556656"]
}