当前位置: 首页 > news >正文

微信小程序全局配置 app.json 详解

1. 引言

在微信小程序项目中,app.json是整个小程序的全局配置文件,可以理解为小程序的“总入口”和“项目大脑”。

它负责定义:

  • 小程序有哪些页面;

  • 哪个页面作为首页;

  • 小程序窗口如何显示;

  • 底部 Tab 栏如何布局;

  • 网络请求超时时间;

  • 权限声明;

  • 分包加载规则等。

简单来说:

app.json决定了小程序的整体骨架,而页面自身的.json文件负责控制单个页面的细节。

例如,一个商城类小程序:

商城小程序 │ ├── 首页 │ ├── 商品列表 │ ├── 购物车 │ ├── 我的 │ └── 设置

这些页面在哪里、如何展示、底部导航如何切换,都需要通过app.json来定义。


app.json 文件特点

app.json本质是一个JSON 格式文件,因此必须严格遵守 JSON 规范。

例如:

✅ 正确:

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

❌ 错误:

{ pages: [ 'pages/index/index' ] }

原因:

  • JSON 的 key 必须使用双引号;

  • 字符串必须使用双引号;

  • 不能写注释;

  • 不能存在多余逗号。

例如:

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

最后一个逗号也是错误的。

注意:下面文章中的 JSON 示例为了方便解释,会使用//注释,但实际开发中app.json不能写注释。


2. 核心配置详解

2.1 pages(页面路径)

作用

pages用于声明小程序所有页面路径。

它是app.json中最重要的配置之一。

例如:

{ "pages": [ "pages/index/index", "pages/shop/shop", "pages/cart/cart", "pages/user/user" ] }

表示小程序包含:

pages │ ├── index │ └── index.js │ ├── shop │ └── shop.js │ ├── cart │ └── cart.js │ └── user └── user.js

首页规则

pages数组中的第一项就是小程序启动首页

例如:

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

启动后首先进入:

pages/login/login

而不是:

pages/index/index

所以开发过程中经常通过调整第一项改变启动页面。


路径注意事项

1. 不需要写文件后缀

正确:

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

不要:

{ "pages": [ "pages/index/index.wxml" ] }

微信小程序会自动寻找:

index.js index.json index.wxml index.wxss

2. 使用相对项目根目录路径

小程序路径都是相对于项目根目录。

例如:

项目:

miniprogram │ ├── app.json │ └── pages └── index └── index.js

配置:

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

而不是:

http://www.jsqmd.com/news/1295848/

相关文章:

  • 深度解析OpenCore Legacy Patcher:老Mac升级macOS的技术突破与性能优化完整方案
  • 【Bug已解决】[Bug]: GPU coredump during FlashInfer `trtllm_bf16_moe` autotune with Qwen3.5-35B-A3B on B2
  • 3天从零到专业:OpenUtau虚拟歌手编辑器的完整实战指南
  • TinyMapper常见问题解答:解决90%开发者遇到的映射难题
  • 2026年GEO加盟哪家好?5家源头厂商能力深度对比 - 甄选测评馆
  • Claudia隐私保护:用户数据隐私保护策略
  • 如何快速上手Cognee:终极AI记忆平台完整部署指南
  • 为什么你的AI副业半年亏了8300元?——基于137个真实副业项目的成本结构逆向分析
  • 三星固件下载全攻略:Samloader开源工具深度解析与实战指南
  • GigaTrain配置文件完全指南:PY/YAML/JSON多格式支持与模块化设计详解
  • Popcorn Time终极指南:免费开源影视流媒体平台的完整使用教程
  • 如何在10分钟内部署application-gateway-kubernetes-ingress?零经验也能搞定的AKS ingress控制器
  • 2026年覆膜除尘布袋厂家深度测评:五大真实品牌技术解析与选型避坑指南 - 品牌报告
  • 全程无广✅用paperxie写完一整篇毕业论文的真实体验
  • 2026江苏槽钢供应商实力洞察:优质生产与配送企业全面盘点 - 品牌品鉴馆
  • 魔兽世界字体问题终极解决方案:3分钟打造完美游戏字体
  • Atom编辑器中文汉化终极指南:5分钟打造专属中文编程环境
  • 如何用uBlock Origin全面掌控你的浏览器体验:从广告拦截到隐私保护的完整指南
  • Umi-OCR终极指南:免费高效的离线文字识别解决方案
  • AI写微服务代码:不是“能不能”,而是“哪3类模块绝对不能交出去”——Gartner 2024技术雷达警示
  • 广东锂电池生产车间快速门货淋室案例|解决新能源制造洁净入口管理难题 - 甄选测评馆
  • 如何用LTX-2与ComfyUI打造你的专属AI音视频创作工作室?[特殊字符]
  • 计算机毕业设计之大学生二手电子产品交易平台设计与实现
  • 黄金回收交易 “四不五要” 准则|上海正规实体门店挑选参考 - 日常比对手册
  • Yazelix Nova vs Classic:77%代码精简,为何新一代终端工作空间更值得选择?
  • 终极指南:如何在Mac上实现Android USB网络共享的完整解决方案
  • AI Agent、架构决策记录与工程上下文治理:团队如何把隐性约束留在仓库里。
  • Marshal与其他Swift JSON解析库对比:为什么选择Marshal?
  • Equalizer APO:Windows音频优化的终极指南与实用配置技巧
  • 如何让终端随音乐起舞:终端音频可视化终极指南