配置
-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