疫情期间实在无聊,为了响应公司 “ 停工不停学,在逆战中成长 ”的口号, 我就回忆一下小程序
微信小程序 “全局页面配置”
pages
用于指定小程序由哪些页面组成,每一项都对应一个页面的 路径(含文件名) 信息。文件名不需要写文件后缀,
切记数组第一项就是小程序首页
{
"pages": ["pages/index/index", "pages/logs/logs"]
}
window
用于设置小程序的状态栏、导航条、标题、窗口背景色。
{
"window": {
"navigationBarBackgroundColor": "#ffffff", //导航栏背景颜色
"navigationBarTextStyle": "black", //导航栏标题颜色,仅支持 black / white
"navigationStyle":"default ", //导航栏样式,default 默认样式,custom 自定义导航栏
"backgroundColor":"#fff", //窗口的背景色
"backgroundTextStyle":"dark", //下拉 loading 的样式,仅支持 dark / light
"enablePullDownRefresh":false, // 是否开启全局的下拉刷新
"onReachBottomDistance":50 //页面上拉触底事件触发时距页面底部距离,不用写单位默认px
"pageOrientation":"portrait", //屏幕旋转设置,支持 auto / portrait / landscape
}
}
tabBer
如果小程序是一个多tab应用(客户端窗口的底部或顶部有tab栏可以切换页面),可以通过 tabBar 配置项指定 tab 栏的表现,以及 tab 切换时显示的对应页面。
{
"tabBar": {
"color": "#fff", //未选中tab 上的文字默认颜色,十六进制颜色
"selectedColor": "#fff", //选中tab上的文字选中时的颜色,十六进制颜色
"backgroundColor": "#fff", //tab 的背景。十六进制颜色
"borderStyle": "black", //tabbar 上边框的颜色, 仅支持 black / white
"position": "bottom", //tabBar 的位置,仅支持 bottom / top
"custom": false, //自定义 tabBar
"list": [ //其中 list 接受一个数组,最少 2 个、最多 5 个 tab。tab 按数组的顺序排序,每个项都是一个对象,其属性值如下:
{
"pagePath" //页面路径,必须在 pages 中先定义
"text" //tab 上按钮文字
"iconPath" //未选中的tab icon路径,不支持网络图片
"selectedIconPath" //选中的icon路径
}
]
}
networkTimeout
各类网络请求的超时时间,不加单位,单位均为毫秒,值为number类型
{
"networkTimeout":{
"request" //wx.request 的超时时间,单位:毫秒。
"connectSocket"//wx.connectSocket 的超时时间,单位:毫秒。
"uploadFile" //wx.uploadFile 的超时时间,单位:毫秒。
"downloadFile" //wx.downloadFile 的超时时间,单位:毫秒。
}
}
permission
小程序接口权限相关设置。字段类型为 Object,结构为:
{
"scope.userLocation": {
"desc": "你的位置信息将用于小程序位置接口的效果展示"
}
}

style
"style": "v2",//app.json 中配置 "style": "v2"可表明启用新版的组件样式,如使用了其他ui库一定要把此字段删除,不然会出现一样,此字段是默认自带的
微信小程序 “页面配置”
页面配置须在页面的json文件内写,如果某些配置和全局配置相同则会覆盖全局配置。
{
"usingComponents": { //组件的引入,组件名:组件路径,
"movie":"/components/movie/movie"
},
"navigationBarBackgroundColor":"#f66", //导航栏背景颜色
'navigationBarTextStyle':"white", //导航栏标题颜色,仅支持 black / white
"navigationBarTitleText":"时光", //导航栏标题文字内容
"navigationStyle":"default" , //导航栏样式,仅支持以下,default 默认样式,custom 自定义导航栏
"backgroundColor":"#ffffff", //窗口的背景色
"backgroundTextStyle":"dark", //下拉 loading 的样式,仅支持 dark / light
"enablePullDownRefresh" : false, //是否开启当前页面下拉刷新。
"onReachBottomDistance": 50 , //页面上拉触底事件触发时距页面底部距离,单位为px。
"pageOrientation":"portrait", // 屏幕旋转设置,支持 auto/ portrait / landscape
"disableScroll":false //设置为 true 则页面整体不能上下滚动。只在页面配置中有效,无法在 app.json 中设置
}
在小程序的设计中一般是以iphone6来设计的,因为iphone6的屏幕宽度设置为750px;
px和rpx的换算单位为1:2
比如height:30px;
则:height:60rpx;
错误之处欢迎指出!