微信小程序学习笔记(二)--框架-全局及页面配置

摘要:
全局配置app.json文件用于全局配置微信小程序、确定页面文件的路径、窗口表示、设置网络超时以及设置多个选项卡。最终效果如下:页面用于指定小程序由哪些页面组成,每个项目对应于页面的路径+文件名信息。在小程序中添加/删除页面时,需要修改页面数组。
描述和功能

框架提供了自己的视图层描述语言 WXML 和 WXSS,以及基于 JavaScript 的逻辑层框架,并在视图层与逻辑层间提供了数据传输和事件系统,让开发者能够专注于数据与逻辑。

响应的数据绑定

框架的核心是一个响应的数据绑定系统。

整个小程序框架系统分为两部分:视图层(View)和逻辑层(App Service)。

页面管理

框架 管理了整个小程序的页面路由,可以做到页面间的无缝切换,并给以页面完整的生命周期。开发者需要做的只是将页面的数据、方法、生命周期函数注册到 框架 中,其他的一切复杂的操作都交由 框架 处理。

基础组件

框架 提供了一套基础的组件,这些组件自带微信风格的样式以及特殊的逻辑,开发者可以通过组合基础组件,创建出强大的微信小程序 。

丰富的 API

框架 提供丰富的微信原生 API,可以方便的调起微信提供的能力,如获取用户信息,本地存储,支付功能等。

文件结构 

小程序包含一个描述整体程序的 app 和多个描述各自页面的 page

一个小程序主体部分由三个文件组成,必须放在项目的根目录,如下:

微信小程序学习笔记(二)--框架-全局及页面配置第1张

一个小程序页面由四个文件组成,分别是:

微信小程序学习笔记(二)--框架-全局及页面配置第2张

注意:为了方便开发者减少配置项,描述页面的四个文件必须具有相同的路径与文件名。

全局配置

app.json文件用来对微信小程序进行全局配置,决定页面文件的路径、窗口表现、设置网络超时时间、设置多 tab 等。

app.json 配置项列表

 微信小程序学习笔记(二)--框架-全局及页面配置第3张

试着加了点文件

微信小程序学习笔记(二)--框架-全局及页面配置第4张

在app.json中配置了tabBar,如下:

{
  "pages":[
    "pages/index/index",
    "pages/logs/logs",
    "pages/components/user-center/user-center"
  ],
  "window":{
    "backgroundTextStyle":"light",
    "navigationBarBackgroundColor": "#eeeeee",
    "navigationBarTitleText": "WeChat",
    "navigationBarTextStyle":"black"
  },
  "tabBar":{
    "list":[{
      "pagePath":"pages/index/index",
      "text":"首页"
    },{
     "pagePath":"pages/components/user-center/user-center",
      "text":"个人中心"
    }]
  },
  "networkTimeout":{
    "request":10000,
    "downloadFile":10000
  },
  "debug":true
}

添加了的页面要在"Pages"里面声明路径,否则在需要调用的时候会找不到。最后的效果如下:

微信小程序学习笔记(二)--框架-全局及页面配置第5张

pages

用于指定小程序由哪些页面组成,每一项都对应一个页面的 路径+文件名 信息。文件名不需要写文件后缀,框架会自动去寻找对于位置的 .json.js.wxml.wxss 四个文件进行处理。

数组的第一项代表小程序的初始页面(首页)。小程序中新增/减少页面,都需要对 pages 数组进行修改。

window

用于设置小程序的状态栏、导航条、标题、窗口背景色。

属性类型默认值描述最低版本
navigationBarBackgroundColorHexColor#000000导航栏背景颜色,如 #000000 
navigationBarTextStyleStringwhite导航栏标题颜色,仅支持 black / white 
navigationBarTitleTextString 导航栏标题文字内容 
navigationStyleStringdefault导航栏样式,仅支持以下值:
default 默认样式
custom 自定义导航栏,只保留右上角胶囊按钮
微信版本 6.6.0
backgroundColorHexColor#ffffff窗口的背景色 
backgroundTextStyleStringdark下拉 loading 的样式,仅支持 dark / light 
backgroundColorTopString#ffffff顶部窗口的背景色,仅 iOS 支持微信版本 6.5.16
backgroundColorBottomString#ffffff底部窗口的背景色,仅 iOS 支持微信版本 6.5.16
enablePullDownRefreshBooleanfalse是否全局开启下拉刷新。
详见 Page.onPullDownRefresh
 
onReachBottomDistanceNumber50页面上拉触底事件触发时距页面底部距离,单位为px。
详见 Page.onReachButom

注:HexColor(十六进制颜色值),如"#ff00ff"

注:navigationStyle 只在 app.json 中生效。开启 custom 后,低版本客户端需要做好兼容。开发者工具基础库版本切到 1.7.0(不代表最低版本,只供调试用)可方便切到旧视觉

注:客户端 6.7.2 版本开始,navigationStyle: custom 对 <web-view> 组件无效

关于window及tabBar、networkTimeout等的配置,参考 全局配置

页面配置

每一个小程序页面也可以使用.json文件来对本页面的窗口表现进行配置。

页面的配置只能设置 app.json 中部分 window 配置项的内容,页面中配置项会覆盖 app.json 的 window 中相同的配置项。

页面配置项列表

微信小程序学习笔记(二)--框架-全局及页面配置第6张

页面的.json只能设置 window 相关的配置项,以决定本页面的窗口表现,所以无需写 window 这个键。

免责声明:文章转载自《微信小程序学习笔记(二)--框架-全局及页面配置》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇给新手看的 Micronaut 入门教程,10 分钟写出一个Micronaut程序颜色表下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

微服务概述

微服务架构4个核心问题: 服务很多,客户端怎么访问? 这么多服务,服务之间如何通信? (一般使用RPC或Http) 这么多服务,如何治理? 服务挂了怎么办? 问题原因:网络不可靠!! 解决方案: 1)spring cloud 生态! Spring Cloud NetFlix 一站式解决方案 解决访问:api网关,zuul组件 解决通信:Feign —...

立足于运维与监控的前端框架 NoahV

NoahV是一个致力于解决中后台前端效率问题的前端框架,立足于运维和监控的应用场景,使用当前前端最新的技术栈并结合团队在项目开发中的最佳实践从而推出的前端开发框架。 NoahV提供的功能覆盖了从开发到线上运行各个阶段: 开发阶段提供了组件、模版、研发工具,最佳实践、解决方案,从多个维度帮助开发者提升开发效率,简化开发过程。 构建和部署阶段提供了规范的打包...

antd框架tree树动态插入,解决新版Antd无法使用TreeNodes问题

本文主要解决: iview树形组件使用问题,已经有后台数据,请问如何对应treeData的字段? 如下所示 { title: 'child 1-1', expand: true, children: [ { title: 'leaf 1-1-1...

微信小程序官方示例 官方weui-wxss下载于安装 详解

1.小程序示例源码:https://github.com/wechat-miniprogram/miniprogram-demo 2.微信 weui下载地址:https://github.com/weui/weui-wxss/ weui用微信开发者工具打开步骤。 新先小程序,目录选择dist。appid可以选择测试 对WEUI css详解...

.NET开发者必备的工具箱

本文作者Spencer是一名专注于ASP.NET和C#的程序员,他列举了平时工作、在家所使用的大部分开发工具,其中大部分工具都是集中于开发,当然也有一些其它用途的,比如图片处理、文件压缩等。 如果你是一名.NET程序员,不妨来看看本文推荐的这些工具吧。灵活搭配并使用它们,或许可以给你带来意想不到的收获哦。 主要工具 Visual Studio—— IDEs...

C/C++常用库及工具

值得学习的C语言开源项目 - 1. Webbench  Webbench是一个在Linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力。Webbench使用C语言编写, 代码实在太简洁,源码加起来不到600行。 下载链接:http://...