0530-3433334

网站建设 APP开发 小程序

知识

分享你我感悟

您当前位置>首页 >> 知识 >> 小程序

微信小程序是啥本质就是(混合)的app

发表时间:2023-12-05 09:17:07

文章来源:炫佑科技

浏览次数:222

菏泽炫佑科技 菏泽炫佑小程序开发 菏泽炫佑app制作 炫佑科技

微信小程序是啥本质就是(混合)的app

其本质实际上是一个介于 Web 应用程序和本机应用程序之间的(混合)应用程序。 具有丰富的接口,可以调用手机的各种功能,同时又灵活、跨平台。

1、运行环境的差异

微信小程序运行在三个终端:iOS、用于调试的开发工具。

三种终端脚本执行环境和用于渲染非原生组件的环境是不同的:

2、小程序目录结构

├── 页数

| ├── 索引

| | ├──index.json索引页配置

| | ├──index.js索引页逻辑

| | ├──index.wxml索引页结构

| | └──index.wxss 索引页样式表

| └── 日志

| ├── log.json 日志页面配置

| ├── log.wxml 日志页面逻辑

| ├── log.js 日志页面结构

| └── log.wxss 日志页面样式表

├── app.js小程序逻辑

├── app.json小程序公共设置

└── app.wxss小程序公共样式表

3. 为什么小程序更快?

2.小程序架构

微信小程序的框架由两部分组成:View层(可能有多个)和App逻辑层(一个)。 View层用于渲染页面结构,该层用于逻辑处理、数据请求、接口调用。 它们是在两个线程中实现的。 跑进去。

视图层使用渲染,逻辑层使用执行。

视图层和逻辑层通过系统层进行通信。 逻辑层将数据变化通知视图层,并触发视图层的页面更新。 视图层将触发的事件通知给逻辑层进行业务处理。

让我们重点关注wxs:

由于View和App是不同的线程,所以之前传输过数据。 当视图中需要处理一些数据时,可以使用wxs来处理。 定义如下及使用说明

索引.js

//获取应用实例 const app = getApp() Page({ data: { motto: 'Hello World', userInfo: {}, hasUserInfo: false },//事件处理函数 bindViewTap: function() { }, onLoad: function() { } })  {{tools.bar(motto)}}{{tools.foo}} var foo = "'hello world' from comm.wxs"; var bar = function(d) { return '啥子玩意'+d; } module.exports = { foo: foo, bar: bar }; 

3.小程序启动与加载

运行机制

小程序启动时有两种情况,一种是“冷启动”,一种是“热启动”。 如果用户已经打开过某个小程序微信小程序开发周期,然后在一定时间内再次打开小程序,此时不需要重新启动它。 只需将后台小程序切换到前台即可。 这个过程是热启动; 冷启动是指用户**次打开小程序或者被微信主动销毁后再次打开时,需要重新加载并启动小程序。

更新机制

如果冷启动时发现新版本小程序,则会异步下载新版本代码包微信小程序是啥本质就是(混合)的app,并与客户端本地包同时启动。 即下次冷启动时才会应用新版本的小程序。 如果需要立即应用*新版本,可以使用 wx. API 来处理它。

运行机制

4.查看(页面查看)

视图层采用WXML和WXSS编写,通过组件显示。

将逻辑层的数据反映到视图中,并将视图层的事件发送到逻辑层。

1. 视图-WXML

wxml编译器:wcc 将wxml文件转换为js 执行方法:wcc index.wxml

2.查看-WXSS

3.查看-

4. 查看-

5. 预加载

小程序每次进入时,除了当前页面之外,还会提前加载一个额外的页面。

当指定页面打开时,直接使用默认数据进行渲染,并在请求数据返回时进行部分更新。

返回显示历史查看

退出小程序,View状态不被破坏

6.App(逻辑层)

逻辑层处理数据并发送给视图层,同时接受视图层的事件反馈。

1、App()小程序的入口; Page()页面的入口

3.提供丰富的API,如微信用户数据、扫描、支付等微信特有的能力。

4、每个页面都有独立的作用域,并提供模块化能力。

5.数据绑定、事件分发、生命周期管理、路由管理

操作环境

IOS-

- X5 JS 解析器

- nwjs内核

1.应用程序-

2. 应用程序生命周期

3.应用程序API

API 通过 和 进行通信

4.应用程序-

保留当前页面,跳转到应用程序中的某个页面,并使用它返回原始页面。页面路径只能是五级

关闭当前页面并跳转到应用内的页面。

关闭当前页面并返回上一页或多级页面。 可以通过())获取当前页面堆栈,并决定需要返回多少层。

5、小程序开发经验

1、小程序存在的问题

小程序仍然使用渲染,而不是原生渲染

需要独立开发,不能运行在非微信环境。

开发无法扩展新组件。

依赖浏览器环境的JS库无法使用,因为它们被执行并且没有对象。

本地(图像、字体等)不能在 WXSS 中使用。

WXSS转换为js而不是css。

WXSS 不支持级联选择器。

小程序无法打开页面,无法启动APP。

2、小程序的优势

提前创建一个新页面,为新页面渲染做准备。

View层和逻辑层分离,由数据驱动,不直接操作DOM。

使用 DOM 进行本地更新。

炫佑科技专注互联网开发小程序开发-app开发-软件开发-网站制作等

相关案例查看更多