小程序的宿主环境

本文详细解释了宿主环境在小程序开发中的重要性,包括小程序的通信模型(渲染层与逻辑层交互)、运行机制(启动和渲染过程),以及常用组件如view、scroll-view、swiper等的使用和特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

宿主环境简介

1.什么是宿主环境

宿主环境(host environment)指的是程序运行所必须的依赖环境。例如:
Android 系统iOS系统是两个不同的宿主环境。安卓版的微信App是不能在iOS 环境下运行的,所以,
Android 是安卓软件的宿主环境,脱离了宿主环境的软件是没有任何意义的!

2.小程序的宿主环境

手机微信是小程序的宿主环境,如图所示:

小程序借助宿主环境提供的能力,可以完成许多普通网页无法完成的功能,例如:
微信扫码、微信支付、微信登录、地理定位、etc...

3.小程序宿主环境包含的内容

(1)通信模型

(2)运行机制

(3)组件

(4)API

通信模型

1.通信的主体

小程序中通信的主体是渲染层逻辑层,其中:

  • WXML 模板和 WXSS样式工作在渲染层
  • JS 脚本工作在逻辑层

2.小程序的通信模型

小程序中的通信模型分为两部分:
渲染层逻辑层之间的通信
      &由微信客户端进行转发
逻辑层第三方服务器之间的通信
      &由微信客户端进行转发

运行机制

1.小程序启动的过程

①把小程序的代码包下载到本地

②解析 app.json 全局配置文件

③执行app.js 小程序入口文件,调用App()创建小程序实例

④渲染小程序首页

⑤小程序启动完成

2.页面渲染的过程

①加载解析页面的.json配置文件

②加载页面的.wxml模板和.wxss 样式

③ 执行页面的.js 文件,调用 Page() 创建页面实例

④页面渲染完成

组件

1.小程序中组件的分类

小程序中的组件也是由宿主环境提供的,开发者可以基于组件快速搭建出漂亮的页面结构。官方把小程序的组件分为了9大类,分别是:

①视图容器

②基础内容

③表单组件

④导航组件

⑤媒体组件

⑥map 地图组件

⑦canvas 画布组件

⑧开放能力

⑨无障碍访问

2.常用的视图容器类组件

①view

  • 普通视图区域
  • 类似于 HTML 中的div,是一个块级元素
  • 常用来实现页面的布局效果

②scroll-view

  • 可滚动的视图区域
  • 常用来实现滚动列表效果

③swiper 和 swiper-item

  • 轮播图容器组件和轮播图item 组件

3.view组件的基本使用

实现如图的flex横向布局效果:

4.scroll-view 组件的基本使用

实现如图的纵向滚动效果:

5.swiper 和 swiper-item 的组件的基本使用

实现如图的轮播效果:

6.swiper 组件的常用属性

属性类型默认值说明
indicator-dotsbooleanfalse是否显示面板指示点
indicator-colorcolorraba(0,0,0,3)指示点颜色
indicator-active-colorcolor#000000当前选中的指示点颜色
autoplaybooleanfalse是否自动切换
intervalnumber5000自动切换时间间隔
circularbooleanfalse是否采用衔接滑动

7.常用的基础内容组件

(1)text
  • 文本组件
  • 类似于 HTML 中的span标签,是一个行内元素
(2)rich-text
  • 富文本组件
  • 支持把 HTML 字符串渲染为WXML结构

8.text组件的基本使用

通过text组件的 uer-select 属性,实现长按选中文本内容的效果:

9. rich-text 组件的基本使用

通过 rich-text 的组件的 nodes 属性节点,把HTML字符串渲染为对应的UI结构

10.其他常用组件

(1)button
  • 按钮组件
  • 功能比 HTML 中的 button 按钮丰富
  • 通过 open-type属性可以调用微信提供的各种功能(客服、转发、获取用户授权、获取用户信息等)
(2)image
  • 图片组件
  • image 组件默认宽度约300px、高度约 240px
(3)navigator (后面课程会专门讲解)
  • 页面导航组件
  • 类似于 HTML 中的a链接

11. button 按钮的基本使用

12.image组件的基本使用

13. image 组件的 mode 属性

image 组件的 mode 属性用来指定图片的裁剪和缩放模式,常用的 mode 属性如下:

mode值说明
scaletofill(默认值)缩放模式,不保持纵横缩放图片,使图片的宽高完全拉伸至填满 image 元素
aspectFit

缩放模式,保持纵横比缩放图片,使图片的长边完全显示出来。

也就是说,可以完整地将图片显示出来

aspectFill缩放模式,保持纵横缩放图片,只保证图片的短边能完全显示出来。也就是说,图片通常只在水平或垂直方向是完整的,另一个方向将会发生截取。
widthFix缩放模式,宽度不变,高度自动变化,保持原图宽高比不变
heightFix缩放模式,高度不变,宽度自动变化,保持原图宽高比不变

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值