注册成为开发者
地址: https://mp.weixin.qq.com/cgi-bin/wx
开发者工具下载地址
https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/download.html?t=20161222
官方手册地址
https://mp.weixin.qq.com/debug/wxadoc/dev/?t=20161222
一、微信小程序目录结构
1.一个小程序主体部分由三个文件组成,必须放在项目的根目录
app.js
是小程序的脚本代码。我们可以在这个文件中监听并处理小程序的生命周期函数、声明全局变量。调用框架提供的丰富的 API,如本例的同步存储及同步读取本地数据。API文档
app.json:
是对整个小程序的全局配置。我们可以在这个文件中配置小程序是由哪些页面组成,配置小程序的窗口背景色,配置导航条样式,配置默认标题。注意该文件不可添加任何注释。配置参考
app.wxss:
是整个小程序的公共样式表。我们可以在页面组件的 class 属性上直接使用 app.wxss 中声明的样式规则。
2.描述各自页面的 page
一个小程序页面由四个文件组成,分别是:
注意:为了方便开发者减少配置项,我们规定描述页面的这四个文件必须具有相同的路径与文件名。
二、文件配置
1.app.json文件配置
app.json
文件来对微信小程序进行全局配置,决定页面文件的路径、窗口表现、设置网络超时时间、设置多 tab 等。
app.json 配置项列表
(1)pages
数组,每一项都是字符串,来指定小程序由哪些页面组成。每一项代表对应页面的【路径+文件名】信息,数组的第一项代表小程序的初始页面。小程序中新增/减少页面,都需要对 pages 数组进行修改。文件名不需要写文件后缀,因为框架会自动去寻找路径.json
,.js
,.wxml
,.wxss
的四个文件进行整合。
(2)window
用于设置小程序的状态栏、导航条、标题、窗口背景色。
(3)tabBar
如果我们的小程序是一个多 tab 应用(客户端窗口的底部或顶部有 tab 栏可以切换页面),那么我们可以通过 tabBar 配置项指定 tab 栏的表现,以及 tab 切换时显示的对应页面。
Tip:a.当设置 position 为 top 时,将不会显示 icon
b.tabBar 中的 list 是一个数组,只能配置最少2个、最多5个 tab,tab 按数组的顺序排序。
list 接受一个数组,数组中的每个项都是一个对象,其属性值如下:
(4)networkTimeout
可以设置各种网络请求的超时时间。
(5)debug
可以在开发者工具中开启 debug 模式,在开发者工具的控制台面板,调试信息以 info 的形式给出,其信息有Page的注册
,页面路由
,数据更新
,事件触发
。 可以帮助开发者快速定位一些常见的问题。
{ "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 }
2.page.json
每一个小程序页面也可以使用.json
文件来对本页面的窗口表现进行配置。 页面的配置比app.json
全局配置简单得多,只是设置 app.json 中的 window 配置项的内容,页面中配置项会覆盖 app.json 的 window 中相同的配置项。
页面的.json
只能设置 window
相关的配置项,以决定本页面的窗口表现,所以无需写 window
这个键,如:
{ "navigationBarBackgroundColor": "#ffffff", "navigationBarTextStyle": "black", "navigationBarTitleText": "微信接口功能演示", "backgroundColor": "#eeeeee", "backgroundTextStyle": "light" }