微信小程序 配置文件详细介绍

发布时间 - 2026-01-10 21:49:26    点击率:

下面以开发者工具自动生成的程序框架为例,对小程序的框架进行介绍。

选择一个空的项目目录创建一个小程序项目,如下图:

创建完成后我们看到如下目录结构:
目录结构

小程序包含一个描述整体程序的 app 和多个描述各自页面的 page。

一个小程序主体部分由三个文件组成,必须放在项目的根目录,如下:

文件 必须 作用
app.js 小程序逻辑
app.json 小程序公共设置
app.wxss 小程序公共样式表

pages目录下为小程序页面,每个页面须建立独立的文件夹,例如上面生成的小程序有两个页面,分别为pages/index、pages/logs,一个页面由四个文件组成,分别是:

文件类型 必须 作用
js 页面逻辑
wxml 页面结构
wxss 页面样式表
json 页面配置

配置

app.json文件来对微信小程序进行全局配置,决定页面文件的路径、窗口表现、设置网络超时时间、设置多 tab 等。
例子中的配置文件内容如下:

{
 "pages":[
  "pages/index/index",
  "pages/logs/logs"
 ],
 "window":{
  "backgroundTextStyle":"light",
  "navigationBarBackgroundColor": "#fff",
  "navigationBarTitleText": "WeChat",
  "navigationBarTextStyle":"black"
 }
}

app.json共提供了以下配置项:

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

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

window

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

属性 类型 默认值 描述
navigationBarBackgroundColor HexColor 000000 导航栏背景颜色,如”#000000”
navigationBarTextStyle String white 导航栏标题颜色,仅支持 black/white
navigationBarTitleText String 导航栏标题文字内容
backgroundColor HexColor ffffff 窗口的背景色
backgroundTextStyle String dark 下拉背景字体、loading 图的样式,仅支持 dark/light
enablePullDownRefresh Boolean false 是否开启下拉刷新,详见页面相关事件处理函数。

tabBar

如果我们的小程序是一个多 tab 应用(客户端窗口的底部有tab栏可以切换页面),那么我们可以通过 tabBar 配置项指定 tab 栏的表现,以及 tab 切换时显示的对应页面。

tabBar 是一个数组,只能配置最少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 中先定义
text String tab 上按钮文字
iconPath String 图片路径,icon 大小限制为40kb
selectedIconPath String 选中时的图片路径,icon 大小限制为40kb

可以设置各种网络请求的超时时间。

属性说明:

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

可以在开发者工具中开启 debug 模式,在开发者工具的控制台面板,调试信息以 info 的形式给出,其信息有Page的注册,页面路由,数据更新,事件触发 。

page.json

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

页面的.json只能设置 window 相关的配置项,以决定本页面的窗口表现,所以无需写 window 这个键,如:

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

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# 微信小程序  # 配置文件详解  # 配置文件介绍  # 微信小程序购物商城系统开发系列-目录结构介绍  # 微信小程序 wx.request合法域名配置详解  # 微信公众号菜单配置微信小程序实例详解  # 微信小程序 教程之小程序配置  # 微信小程序Server端环境配置详解(SSL  # Nginx HTTPS  # TLS 1.2 升级)  # 微信小程序(二)Window 配置详细介绍  # 微信小程序 Nginx环境配置详细介绍  # 微信小程序学习(4)-系统配置app.json详解  # node.js微信小程序配置消息推送的实现  # 微信小程序学习笔记之目录结构、基本配置图文详解  # 都是  # 是一个  # 必填  # 最多  # 背景色  # 默认值  # 每一项  # 样式表  # 放在  # 多个  # 我们可以  # 希望能  # 得多  # 分别为  # 可以使用  # 可选  # 为例  # 谢谢大家  # 本页面  # 创建一个 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  Laravel模型事件有哪些_Laravel Model Event生命周期详解  如何在 Pandas 中基于一列条件计算另一列的分组均值  EditPlus中的正则表达式 实战(2)  专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?  Laravel用户认证怎么做_Laravel Breeze脚手架快速实现登录注册功能  HTML透明颜色代码怎么让下拉菜单透明_下拉菜单透明背景指南【技巧】  企业网站制作这些问题要关注  如何在宝塔面板中修改默认建站目录?  北京网站制作公司哪家好一点,北京租房网站有哪些?  用yum安装MySQLdb模块的步骤方法  魔方云NAT建站如何实现端口转发?  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  北京专业网站制作设计师招聘,北京白云观官方网站?  绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信  如何在建站主机中优化服务器配置?  网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?  油猴 教程,油猴搜脚本为什么会网页无法显示?  Laravel软删除怎么实现_Laravel Eloquent SoftDeletes功能使用教程  如何在云主机快速搭建网站站点?  深圳网站制作平台,深圳市做网站好的公司有哪些?  java中使用zxing批量生成二维码立牌  Laravel怎么进行数据库回滚_Laravel Migration数据库版本控制与回滚操作  canvas 画布在主流浏览器中的尺寸限制详细介绍  如何自定义建站之星模板颜色并下载新样式?  Laravel Eloquent模型如何创建_Laravel ORM基础之Model创建与使用教程  JavaScript如何操作视频_媒体API怎么控制播放  利用vue写todolist单页应用  如何在不使用负向后查找的情况下匹配特定条件前的换行符  如何在阿里云完成域名注册与建站?  Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置  广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?  如何选择PHP开源工具快速搭建网站?  php做exe能调用系统命令吗_执行cmd指令实现方式【详解】  Laravel如何实现API版本控制_Laravel API版本化路由设计策略  uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址  HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】  Linux系统命令中tree命令详解  Laravel怎么清理缓存_Laravel optimize clear命令详解  在centOS 7安装mysql 5.7的详细教程  微信h5制作网站有哪些,免费微信H5页面制作工具?  Laravel如何实现API版本控制_Laravel版本化API设计方案  C#如何调用原生C++ COM对象详解  移动端脚本框架Hammer.js  Laravel如何使用Laravel Vite编译前端_Laravel10以上版本前端静态资源管理【教程】  如何快速搭建支持数据库操作的智能建站平台?  如何用JavaScript实现文本编辑器_光标和选区怎么处理  Laravel如何生成API文档?(Swagger/OpenAPI教程)  Android中AutoCompleteTextView自动提示