微信小程序的配置包括三方面:全局配置、页面配置、sitemap配置
下面详细介绍这三部分内容。
全局配置
小程序根目录下的 app.json 文件用来对微信小程序进行全局配置。文件内容为一个 JSON 对象,有以下属性:
1.pages
用于指定小程序由哪些页面组成,每一项都对应一个页面的 路径(含文件名) 信息。文件名不需要写文件后缀,框架会自动去寻找对应位置的 .json, .js, .wxml, .wxss 四个文件进行处理。
"pages":[
"pages/index/index"
]
2.window
用于设置小程序的状态栏、导航条、标题、窗口背景色。
"window": {
"navigationBarBackgroundColor": "#ffffff",//导航栏背景颜色
"navigationBarTextStyle": "black",//导航栏标题颜色,仅支持 black / white
"navigationBarTitleText": "导航栏标题",//导航栏标题文字内容
"backgroundColor": "#eeeeee",//窗口的背景色
"backgroundTextStyle": "light"//下拉 loading 的样式,仅支持 dark / light
}
3.tarBar
如果小程序是一个多 tab 应用(客户端窗口的底部或顶部有 tab 栏可以切换页面),可以通过 tabBar 配置项指定 tab 栏的表现,以及 tab 切换时显示的对应页面。
"tabBar": {
"color": "#a9b7b7",//tab上的文字默认颜色,仅支持十六进制颜色
"selectedColor": "#11cd6e",//tab 上的文字选中时的颜色,仅支持十六进制颜色
"backgroundColor":"#11cd6e",//tab的背景色,仅支持十六进制颜色
"borderStyle": "white",//tabbar 上边框的颜色,仅支持 black / white
"list": [
//其中 list 接受一个数组,只能配置最少 2 个、最多 5 个 tab。tab 按数组的顺序排序,每个项都是一个对象
{
"selectedIconPath": "images/11.png",//选中时的图片路径,不支持网络图片。当 position 为 top 时,不显示 icon。
"iconPath": "images/11.png",//图片路径,不支持网络图片。当 position 为 top 时,不显示 icon。
"pagePath": "pages/index/index",//页面路径,必须在 pages 中先定义
"text": "首页"//tab 上按钮文字
},
{
"selectedIconPath": "images/11.png",
"iconPath": "images/11.png",
"pagePath": "pages/logs/logs",
"text": "我的"
}
]
}
4.networkTimeout
各类网络请求的超时时间,单位均为毫秒。
"networkTimeout": {
"request": 10000,
"downloadFile": 10000
}
5.debug
可以在开发者工具中开启 debug 模式,在开发者工具的控制台面板,调试信息以 info 的形式给出,其信息有 Page 的注册,页面路由,数据更新,事件触发等。可以帮助开发者快速定位一些常见的问题。
"debug":true,
6.functionalPages
插件所有者小程序需要设置这一项来启用插件功能页。
7.requiredBackgroundModes
申明需要后台运行的能力,类型为数组。目前支持以下项目:
·audio: 后台音乐播放
·location: 后台定位
如:
{
"pages": ["pages/index/index"],
"requiredBackgroundModes": ["audio", "location"]
}
8.PermissionObject 结构
小程序获取权限时展示的接口用途说明。
"permission": {
"scope.userLocation": {
"desc": "你的位置信息将用于小程序位置接口的效果展示" // 高速公路行驶持续后台定位
}
9.style
微信客户端 7.0 开始,UI 界面进行了大改版。小程序也进行了基础组件的样式升级。app.json 中配置 "style": "v2"可表明启用新版的组件样式。
"style": "v2"
9.useExtendedLib
指定需要引用的扩展库。目前支持以下项目:
-
kbone
: 多端开发框架 -
weui
: WeUI 组件库
指定后,相当于引入了对应扩展库相关的最新版本的 npm 包,同时也不占用小程序的包体积。目前暂不支持在分包中引用。用法如下:
"useExtendedLib": {
"kbone": true,
"weui": true
}
其他配置见开发文档
(https://developers.weixin.qq.com/miniprogram/dev/reference/configuration/app.html)
局部配置
每一个小程序页面也可以使用 .json 文件来对本页面的窗口表现进行配置。页面中配置项在当前页面会覆盖 app.json 的 window 中相同的配置项。文件内容为一个 JSON 对象。
{
"navigationBarBackgroundColor": "#ffffff",
"navigationBarTextStyle": "black",
"navigationBarTitleText": "微信接口功能演示",
"backgroundColor": "#eeeeee",
"backgroundTextStyle": "light"
}
sitemap 配置
小程序根目录下的 sitemap.json 文件用于配置小程序及其页面是否允许被微信索引,文件内容为一个 JSON 对象,如果没有 sitemap.json ,则默认为所有页面都允许被索引。