小程序app.json细节配置文档

字号+ 作者:alpha 来源:www.seoalphas.com 2018-04-21 08:03 浏览次数(567)

app.json文件用来对微信小程序进行全局配置,决定页面文件的路径(pages)、窗口表现(window)、设置网络超时时间(newworkTime

app.json文件用来对微信小程序进行全局配置,决定页面文件的路径(pages)、窗口表现(window)、设置网络超时时间(newworkTimeout)、设置多 tab(tabbar)、是否开启 debug 模式(debug) 等。

以下是一个包含了所有配置选项的 app.json :

{
  "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
}

app.json 配置项列表


属性 类型 必填 描述
pages String Array 设置页面路径
window Object 设置默认页面的窗口表现
tabBar Object 设置底部tab的表现(固定导航)
networkTimeout Object 设置网络超时时间
debug Boolean 设置是否开启debug模式

下面对表格中各个属性详细说明:

pages

接受一个数组,每一项都是字符串,来指定小程序由哪些页面组成。每一项代表对应页面的【路径+文件名】信息,数组的第一项代表小程序的初始页面。小程序中新增/减少页面,都需要对 pages 数组进行修改。

文件名不需要写文件后缀(因为每个路径下面默认的文件类型是固定的,文件名也都是统一的),因为框架会自动去寻找路径下 .json, .js, .wxml, .wxss 四个文件进行整合。

如开发目录为:

pages/
pages/index/index.wxml
pages/index/index.js
pages/index/index.wxss
pages/logs/logs.wxml
pages/logs/logs.js
app.js
app.json
app.wxss

则需要在 app.json 中写

{
  "pages":[
    "pages/index/index",
    "pages/logs/logs"
  ]
}

window

用于设置小程序的状态栏、导航条、标题、窗口背景色。

属性 类型 默认值 描述 最低版本
navigationBarBackgroundColor HexColor #000000 导航栏背景颜色,如"#000000"
navigationBarTextStyle String white 导航栏标题颜色,仅支持 black/white
navigationBarTitleText String
导航栏标题文字内容
navigationStyle String default 导航栏样式,仅支持 default/custom。custom 模式可自定义导航栏,只保留右上角胶囊状的按钮 微信版本 6.6.0
backgroundColor HexColor #ffffff 窗口的背景色(设置了·无效)
backgroundTextStyle String dark 下拉 loading 的样式,仅支持 dark/light
backgroundColorTop String #ffffff 顶部窗口的背景色,仅 iOS 支持 微信版本 6.5.16
enablePullDownRefresh Boolean false 是否开启下拉刷新,详见页面相关事件处理函数
onReachBottomDistance Number 50 页面上拉触底事件触发时距页面底部距离,单位为px

注意:

1、enablePullDownRefresh需要注意下拉刷新这个选项默认是关闭的。

2、HexColor(十六进制颜色值),如"#ff00ff"

3、navigationStyle 只在 app.json 中生效。开启 custom 后,低版本客户端需要做好兼容。开发者工具基础库版本切到 1.7.0(不代表最低版本,只供调试用) 可方便切到旧视觉

示例如下:

如 app.json :


{
  "window":{
    "navigationBarBackgroundColor": "#ffffff",
    "navigationBarTextStyle": "black",
    "navigationBarTitleText": "小程序布局演示",
    "backgroundColor": "#eeeeee",        //实际测试中,这项设置其他颜色,不起作用
    "backgroundTextStyle": "light"
  }
}

QQ截图20180421090804.jpg

【tabBar】

如果小程序是一个多 tab 应用(客户端窗口的底部或顶部有 tab 栏可以切换页面),可以通过 tabBar 配置项指定 tab 栏的表现,以及 tab 切换时显示的对应页面(效果如上图所示底部的三个选项:组件、接口、测试)。

Tip:

当设置 position 为 top 时,将不会显示 icon,top和bottom只能设置一个,也就是说固定导航要么如上图所示在底部,要么在顶部,两者不能同时出现。

tabBar 中的 list 是一个数组,只能配置最少2个、最多5个 tab,tab 按数组的顺序排序。

属性说明:

属性 类型 必填 默认值 描述
color HexColor
tab 上的文字默认颜色
selectedColor HexColor
tab 上的文字选中时的颜色
backgroundColor HexColor
tab 的背景色
borderStyle String black tabbar上边框的颜色, 仅支持 black/white
list Array
tab 的列表,详见 list 属性说明,最少2个、最多5个 tab
position String bottom 可选值 bottom、top

其中 list 接受一个数组,数组中的每个项都是一个对象,其属性值如下:

属性 类型 必填 说明
pagePath String 页面路径,必须在 pages 中先定义,理解为url是不是更合适点
text String tab 上按钮文字
iconPath String 图片路径,icon 大小限制为40kb,建议尺寸为 81px * 81px,当 postion 为 top 时,此参数无效,不支持网络图片
selectedIconPath String 选中时的图片路径,icon 大小限制为40kb,建议尺寸为 81px * 81px ,当 postion 为 top 时,此参数无效

具体效果参考上图。


【networkTimeout】

可以设置各种网络请求的超时时间。一般用不到我们设置。

属性说明:

属性 类型 必填 说明
request Number wx.request的超时时间,单位毫秒,默认为:60000
connectSocket Number wx.connectSocket的超时时间,单位毫秒,默认为:60000
uploadFile Number wx.uploadFile的超时时间,单位毫秒,默认为:60000
downloadFile Number wx.downloadFile的超时时间,单位毫秒,默认为:60000


【debug】

可以在开发者工具中开启 debug 模式,在开发者工具的控制台面板,调试信息以 info 的形式给出,其信息有Page的注册,页面路由,数据更新,事件触发 。 可以帮助开发者快速定位一些常见的问题。


【page.json】

每一个小程序页面也可以使用.json文件来对本页面的窗口表现进行配置。 页面的配置比app.json全局配置简单得多,注意【只是设置 app.json 中的 window 配置项的内容】,页面中配置项会覆盖 app.json 的 window 中相同的配置项。

如果你整个小程序的风格是蓝色调,那么你可以在 app.json 里边声明顶部颜色是蓝色即可。实际情况可能不是这样,可能你小程序里边的每个页面都有不一样的色调来区分不同功能模块,因此我们提供了 page.json,让开发者可以独立定义每个页面的一些属性,例如刚刚说的顶部颜色、是否允许下拉刷新等等。


页面的.json只能设置 window 相关的配置项,以决定本页面的窗口表现,所以无需写 window 这个键,具体参数和window中一致。

{
  "navigationBarBackgroundColor": "#ffffff",
  "navigationBarTextStyle": "black",
  "navigationBarTitleText": "微信接口功能演示",
  "backgroundColor": "#eeeeee",
  "backgroundTextStyle": "light"
}


标签
小程序app.json 小程序

本站部分技术文章为参考网上实用内容发布,目的是记录踩坑经验,若未备注来源而侵犯了您原创文章权益,请联系博主删除;对文章有不同看法的朋友欢迎在评论区留言互动

相关文章
  • 小程序view内容不换行

    小程序view内容不换行

    浏览次数:1966

  • 小程序不存在页面处理 即404页面

    小程序不存在页面处理 即404页面

    浏览次数:1604

  • 小程序4种代码文件类型

    小程序4种代码文件类型

    浏览次数:1060

  • 快速创建小程序说明

    快速创建小程序说明

    浏览次数:925

  • 微信小程序中换行,空格写法

    微信小程序中换行,空格写法

    浏览次数:876

  • wx.canIUse(String)-判断小程序的API,回调,参数,组件等是否在当前版本可用

    wx.canIUse(String)-判断小程序的API,回调,参数,组件等是否在当前版本可用

    浏览次数:785

  • 小程序轮播图-swiper滑块视图容器

    小程序轮播图-swiper滑块视图容器

    浏览次数:505

  • 小程序开发中 var that = this的用法

    小程序开发中 var that = this的用法

    浏览次数:379

网友点评
功能开发中......其实是博主懒了而已......
0.875000s