[TOC]
>[success] # 了解小程序项目的基本组成结构
**项目文件结构** :
~~~
01-PROJECT // 项目名称
|__ pages // 该文件夹下存放所有页面文件,每个页面都是以单独文件夹的形式存在
| |__ index文件夹 // 页面文件夹
| |__ index.js // 页面的【js】代码,用来写事件、逻辑、以及生命周期等等
| |__ index.json // 当前页面的配置文件,可以在这个文件中配置当前页面的外观
| |__ index.wxml // 页面的 【html】 代码
| |__ index.wxss // 页面的 【css】 代码
|
|__ utils // 工具类文件夹(可以在其中创建工具文件)
| |__ utils.js // 工具类js文件
|
|__ .eslintrc.js // 配置ESlint规则文件
|__ app.js // 整个项目中的【逻辑文件】,可以进行【注册小程序的实例】,【绑定生命周期函数】错误监听和页面不存在监听函数等
|__ app.json // 小程序公共配置文件,决定页面文件的路径、窗口表现、设置网络超时时间、设置多少 tab 等
|__ app.wxss // 小程序公共样式表
|__ project.config.json // 是项目配置文件,用来记录我们对小程序开发工具所作的个性化设置
|__ project.private.config.json // 看下面的菜单中有解释
|__ sitemap.json // 配置小程序及其页面是否允许被微信索引
~~~
1. **微信小程序** 的 **页面由 .js、.json、.wxml、.wxss 组成**
2. **project.config.json** :是 **项目配置文件**,用来记录我们对 **小程序开发工具所作的个性化设置**
* `setting` 中保存了 `编译相关的配置`
* `projectname` 中保存的是 `项目名称`
* `appid` 中保存的是 `小程序账号 ID`
3. **sitemap.json** :**配置小程序** 及其 **页面是否允许被微信索引**
>[success] ## project.private.config.json
[微信开放文档对项目配置文件的解释](https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html)
1. 项目根目录中的`project.config.json`和`project.private.config.json`文件可以对项目进行配置,
2. `project.private.config.json`中的相同设置优先级高于`project.config.json`
3. 可以在`project.config.json`文件中配置公共的配置,在`project.private.config.json`配置个人的配置,可以将`project.private.config.json`写到`.gitignore`避免版本管理的冲突。
4. `project.private.config.json`中有的字段,开发者工具内的设置修改会优先覆盖`project.private.config.json`的内容。如在`project.private.config.json`有`appid`字段,那么在 详情-基本信息 中修改了 appid,会写到`project.private.config.json`中,不会覆盖掉`project.config.json`的`appid`字段的内容
5. 开发阶段相关的设置修改优先同步到`project.private.config.json`中,与最终编译产物有关的设置无法在`project.private.config.json`中生效