微信小程序架构篇

微信小程序架构篇,第1张

一、小程序架构

每个小程序的结构都有两个主要部分构成:主体部分+各个页面。类似于许多框架,主体部分主要用于核心的配置,各个页面主要用于不同业务场景。

1.1、主体部分主要由3个文件构成

1)app.js:小程序逻辑,初始化APP

2)app.json:小程序配置,比如导航、窗口、页面http请求跳转等

3)app.wxss:公共样式配置

主体配置完成之后,就是对应业务开发了,也就是开发者最常 *** 作的页面。小程序页面设计基本上也是遵循MVC结构进行构建。

1.2、页面由4个文件构成

1)js:页面逻辑,相当于控制层(C);也包括部分的数据(M)

2)wxml:页面结构展示,相当于视图层(V)

3)wxss:页面样式表,纯前端,用于辅助wxml展示

4)json:页面配置,配置一些页面展示的数据,充当部分的模型(M)

二、配置app.json

app.json

全局配置页面文件的路径、窗口表现、设置网络超时时间、设置多tab等。

pages

接受一个数组,每一项都是字符串,来指定小程序由哪些页面组成

window

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

tabBar

通过tabBar配置项指定tab栏的表现,以及tab切换时显示的对应页面。tabBar配置数组,只能配置最少2个、最多5个tab,tab按数组的顺序排序。

networkTimeout

可以设置各种网络请求的超时时间。

debug:true/false

可以在开发者工具中开启debug模式,在开发者工具的控制台面板,调试信息以info的形式给出,其信息有Page的注册,页面路由,数据更新,事件触发。可以帮助开发者快速定位一些常见的问题

page.json

每一个小程序页面也可以使用.json文件来对本页面的窗口表现进行配置。页面的哦诶址比app.json全局配置简单的多,只是设置app.json中的window配置项的内容,页面中配置项会覆盖app.json的window中相同的配置项。

最近公司在做小程序相关的项目,之前一直没有研究过小程序,正好趁此机会来研究研究,这里我们先来了解小微信小程序项目的基本目录结构,当我们使用微信开发者工具创建了一个小程序项目后,这时候微信开发者工具会帮我们创建一个基本的微信小程序项目框架,如下:

一:page:

page目录下放置的就是各个小程序页面的页面信息,每个小程序的页面信息由四个文件组成,其中js和wxml文件是必须的

1:js文件:主要的作用对页面进行注册,指定页面的初始数据、生命周期回调、事件处理函数等

在js文件中我们一般使用page构造器来注册页面,

官网: https://mp.weixin.qq.com

微信小程序的优势:

一是微信有海量用户,而且粘性很高,在微信里开发产品更容易触达用户;

二是推广app 或公众号的成本太高。

三是开发适配成本低。

四是容易小规模试错,然后快速迭代。

五是跨平台。

登陆成功:

app.json 是当前小程序的全局配置,包括了小程序的所有页面路径、界面表现、网络超时时间、底部 tab 等。 普通快速启动项目 里边的 app.json 配置.

字段的含义

这里的 page.json 其实用来表示页面目录下的 page.json 这类和小程序页面相关的配置。

开发者可以独立定义每个页面的一些属性,如顶部颜色、是否允许下拉刷新等等。

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

WXML(WeiXin Markup Language)是框架设计的一套标签语言,结合 基础组件 、 事件系统 ,可以构建出页面的结构。

.wxml文件下

.js文件Page模块下

不要直接写 checked="false",其计算结果是一个字符串

ps:花括号和引号之间如果有空格,将最终被解析成为字符串.

项的变量名默认为 itemwx:for-item 可以指定数组当前元素的变量名

下标变量名默认为 index wx:for-index 可以指定数组当前下标的变量名

渲染一个包含多节点的结构块 block最终不会变成真正的dom元素

配合 wx:for 使用,用于提高效率。建议写上。

类似 wx:if

频繁切换 用 hidden

不常使用 用 wx:if


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11581767.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存