![微信小程序开发详解](https://wfqqreader-1252317822.image.myqcloud.com/cover/787/920787/b_920787.jpg)
2.4 配置
小程序有两种配置:
(1)全局配置文件,用于小程序的全局配置,决定页面文件的路径、窗口表现、设置网络超时时间、设置多tab等。
(2)页面配置文件,用于配置各个页面,将覆盖app.json的window配置项内容。
2.4.1 全局配置
为了演示所有全局配置,我们做了一个DEMO,完整代码可以查看下载资源中的ch02/settings,包含所有全局配置项目。
参考程序:app.json
![](https://epubservercos.yuewen.com/BBB3D8/10150113803178501/epubprivate/OEBPS/Images/image-0033.jpg?sign=1738853963-EQABr6Amvfdca81DlZdPkshtG3lRCQYi-0-2ee68bbfaf3b8c53bbe090da8e3a2d5b)
![](https://epubservercos.yuewen.com/BBB3D8/10150113803178501/epubprivate/OEBPS/Images/image-0034.jpg?sign=1738853963-4wWAIx8V2tYnLnbmGwWzRzC3Tq7kdmqa-0-1ca69e8834c33302fe8d3269174d6387)
配置项列表如表2-6所示。
表2-6 配置项列表
![](https://epubservercos.yuewen.com/BBB3D8/10150113803178501/epubprivate/OEBPS/Images/image-0035.jpg?sign=1738853963-QcUlfuukyngwPCGZUZfxExLO1kM3S6Qy-0-cfb499e11e922994d48736f6205b3bf0)
1. Pages
Pages设置程序中所有页面,第一个页面为初始页面。
Pages每一项的命名为路径+文件名,一般为pages/dictionary/file。不需要加文件后缀。
2. window
window设置程序中默认页面的状态栏、导航条、标题、窗口背景色,见表2-7。
表2-7 window属性
![](https://epubservercos.yuewen.com/BBB3D8/10150113803178501/epubprivate/OEBPS/Images/image-0039.jpg?sign=1738853963-M8sSYXQKgmL7cLFqx8fUnAgjoigkZzUM-0-26f5c71f1c0c3286bb04e9aa62456246)
注意,如果页面需要启动下拉刷新,务必将enablePullDownRefresh设置为true。可以用onPullDownRefresh监听用户下拉刷新事件。
3. tarBar
tabBar可以配置多个tab页面,配置项包括指定tab栏的表现和tab切换时显示的对应页面。
tabBar的位置可以在顶部(top)或底部(bottom),如图2-5和图2-6所示。
![](https://epubservercos.yuewen.com/BBB3D8/10150113803178501/epubprivate/OEBPS/Images/image-0037.jpg?sign=1738853963-gOW7laS63vYAfnqmIHJkwHbRFRO0ySsT-0-f81db12ca17bc9802b160e7da6f60d56)
图2-5 顶部示例
![](https://epubservercos.yuewen.com/BBB3D8/10150113803178501/epubprivate/OEBPS/Images/image-0036.jpg?sign=1738853963-sJdTFaoPnyZl10GoS8UiYJbLWk60LQXH-0-8bc4108a0a95c9c69cbe0a9357e7273d)
图2-6 底部示例
tabBar属性见表2-8。
表2-8 tabBar属性
![](https://epubservercos.yuewen.com/BBB3D8/10150113803178501/epubprivate/OEBPS/Images/image-0038.jpg?sign=1738853963-ykxmAIks3CNefRps9Iuf2XaTp8VCW1Uq-0-8ea68fa4ab422c17f54f9658d9606ea0)
list属性见表2-9。
表2-9 list属性
![](https://epubservercos.yuewen.com/BBB3D8/10150113803178501/epubprivate/OEBPS/Images/image-0040.jpg?sign=1738853963-toPqMbEgQJo3gCctTyRlJaVB4WHEBRjO-0-b0d0ef3ecfbd7d86f62410a5b048a8dd)
4. networkTimeout
设置各种网络请求的超时时间,见表2-10。
表2-10 networkTimeout属性
![](https://epubservercos.yuewen.com/BBB3D8/10150113803178501/epubprivate/OEBPS/Images/image-0041.jpg?sign=1738853963-wibii3kAthRwe3BJ3Brsk1nOe2NoHKyw-0-b730084c69ca8bf0ecccf79102b2d3a0)
5. debug
可以在开发者工具中开启debug模式,在开发者工具的控制台面板调试信息以info的形式给出,信息有Page的注册、页面路由、数据更新、事件触发等,可以帮助开发者快速定位一些常见问题。
2.4.2 页面配置
每一个小程序页面都可以使用.json文件对本页面的窗口表现进行配置,页面的配置只能设置app.json中的window配置项的内容,页面中的配置项会覆盖app.json的window中相同的配置项。
页面的.json只能设置window相关的配置项,以决定本页面的窗口表现,所以无须写window键。例如:
参考程序:pages/route/route.json
![](https://epubservercos.yuewen.com/BBB3D8/10150113803178501/epubprivate/OEBPS/Images/image-0042.jpg?sign=1738853963-BWPD41Nt67LVn3hCIEnWe7rO0tcKsEXk-0-5c13aa3282201927fdff9c0ae5191059)
导航栏的标题会随之改变,而导航栏背景颜色、导航栏标题颜色、窗口的背景色等特性保持不变,如图2-7所示。
![](https://epubservercos.yuewen.com/BBB3D8/10150113803178501/epubprivate/OEBPS/Images/image-0043.jpg?sign=1738853963-VGHX2l9rLRAtSXXjnqqJmsJJpnJZiikR-0-e876837fdf0db609de58f44fc44a63fb)
图2-7