小程序根目录下的 app.json 文件用来对微信小程序进行全局配置,决定页面文件的路径、窗口表现、设置网络超时时间、设置多 tab 等
先看下官网给的例子:
{ "pages": [ "pages/index/index", "pages/logs/index" ], "window": { "navigationBarTitleText": "Demo" }, "tabBar": { "list": [{ "pagePath": "pages/index/index", "text": "首页" }, { "pagePath": "pages/logs/logs", "text": "日志" }] }, "networkTimeout": { "request": 10000, "downloadFile": 10000 }, "debug": true, "navigateToMiniProgramAppIdList": [ "wxe5f52902cf4de896" ]}下面对app.json配置进行说明:
pages
用于指定小程序由哪些页面组成,每一项都对应一个页面的 路径+文件名 信息。文件名不需要写文件后缀,框架会自动去寻找对于位置的 .json, .js, .wxml, .wxss 四个文件进行处理
├── app.js├── app.json├── app.wxss├── pages│ │── index│ │ ├── index.wxml│ │ ├── index.js│ │ ├── index.json│ │ └── index.wxss│ └── logs│ ├── logs.wxml│ └── logs.js└── utils在app.json中这么写
{ "pages":[ "pages/index/index", "pages/logs/logs" ]}和我们android中mainfest.xml配置跳转的activity类似
window
用于设置小程序的状态栏、导航条、标题、窗口背景色
查看官网定义的类型:

它json是一个Object类型,不是必填写的
它的一些属性如下:

其实就是底部导航栏 跟app很多样式一样viewPager+Fragment
如果小程序是一个多 tab 应用(客户端窗口的底部或顶部有 tab 栏可以切换页面),可以通过 tabBar 配置项指定 tab 栏的表现,以及 tab 切换时显示的对应页面
感觉在学html标签一样,它的一些属性如下:

networkTimeout
各类网络请求的超时时间,单位均为毫秒
属性如下图:

我们发现这些值不是必填的 默认值是6s
debug
可以在开发者工具中开启 debug 模式,在开发者工具的控制台面板,调试信息以 info 的形式给出,其信息有Page的注册,页面路由,数据更新,事件触发等。可以帮助开发者快速定位一些常见的问题
functionalPages
注意:基础库 2.1.0 开始支持,低版本需做兼容处理
启用插件功能页时,插件所有者小程序需要设置其 functionalPages 为 true
暂时不知道什么意思,往后学习才知道













