-app.json文件对微信小程序进行全局配置,决定页面文件的路径、窗口表现、设置网络超时时间、tab等
1 {
2 "pages": [ //决定页面文件的路径
3 "pages/index/index", //第一项配置为默认打开时显示的页面,不需要后缀名,因为其包含.js文件、.wxml文件、.wxss文件以及.json文件,
4 "pages/logs/logs"
5 ],
6 "window": { //窗口默认的表现
7 "backgroundTextStyle": "light", //下拉背景字体、loading 图的样式,仅支持 dark/ligh,默认值为dark
8 "navigationBarBackgroundColor": "#fff", //导航栏背景颜色
9 "navigationBarTitleText": "导航栏文本", //导航栏显示的文本内容
10 "navigationBarTextStyle": "black" //导航栏标题颜色,仅支持 black/white,默认值white
11 },
12 "tabBar": { //设置tab栏,tabBar是一个数组,若是配置,最少2个,最多5个,tab按数组的顺序排序
13 "list": [
14 {
15 "pagePath": "pages/index/index",
16 "text": "首页"
17 },
18 {
19 "pagePath": "pages/logs/logs",
20 "text": "日志"
21 }
22 ]
23 },
24 "networkTimeout": { //设置各自网络请求的超时时间单位为毫秒
25 "request": 10000,
26 "downloadFile": 10000
27 },
28 "debug": true //可以在开发者工具中开启debug模式
29 }
-每一个页面也可以使用.json文件来对本页面的窗口进行配置
--pages.json会覆盖app.json中window配置项中同的内容,若配置内容不相同,则不覆盖
--页面的.json只能设置window相关的配置项,以决定页面窗口的表现,因此不需写window这个键
1 {
2 "navigationBarBackgroundColor": "#f00",
3 "navigationBarTextStyle": "white",
4 "navigationBarTitleText": "具体页面导航栏演示",
5 "backgroundColor": "#eeeeee",
6 "backgroundTextStyle": "light"
7 }
逻辑
-小程序开发框架的逻辑层是由javascript编写
-逻辑层将数据进行处理后发送给视图层,同时接受视图层的事件反馈
--增加App和Page方法,进行程序和页面的注册
--增加getApp和getCurrentPages方法,分别用来获取App实例和当前页面栈
--每个页面有独立的作用域,并提供模块化能力
--框架并非运行在浏览器中,不存在DOM等,所以javascript在web中的一些功能不能使用
--开发者写的所有代码最终将会打包成一份javascript,并在小程序启动时运行,直到小程序销毁,类似serviceWorker,所以逻辑层也称之为App Service