当前位置: 首页 > news >正文

1-2宿主环境

什么是宿主环境

  • 指的是程序运行所必须的依赖环境。
  • Android系统和ios系统是两个不同的宿主环境,安卓版的app是不能在ios系统上运行的。

小程序的宿主环境

🍕🍕🍕

-手机微信是小程序的宿主环境

通信的主体

🍔🍔🍔

  • 渲染层逻辑层
  • Wxml模板和wxss样式是工作在渲染层的
  • js脚本工作在逻辑层
    在这里插入图片描述

通信模型

  • 🐱‍🏍🐱‍🏍🐱‍🏍渲染层逻辑层之间的通信
  • 逻辑层第三方服务器之间的通信
  • 都是通过微信客户端进行转发
    在这里插入图片描述

启动的过程

  • 🍔🍔🍔代码包下载到本地
  • 解析app.json全局配置文件
  • 执行app.js入口文件,调用App()创建小程序实例
  • 渲染首页

组件的分类

  • 🚜🚜🚜官方分为了9大类,宿主环境提供的。
  • 视图容器、基础内容、表单组件、导航组件、媒体组件、map地图组件、canvas画布、开放能力、无障碍访问

常用的视图容器类组件

  • 🤣🤣🤣view、普通视图区域,类似于html的div,是一个块级元素。
  • scroll-view,可滚动的视图区域,常用来实现滚动列表效果
  • swiper和swiper-item,轮播图容器组件和轮播图item组件

view组件的基本使用

  • list.wxml
<view class="container1"><view>1</view><view>2</view><view>3</view>
</view>
  • list.wxss
.container1{margin-top: 50px;
}
.container1 view{width: 100px;height: 100px;text-align: center;
}

scroll-view基本使用

<scroll-view class="container1" scroll-y><view>1</view><view>2</view><view>3</view>
</scroll-view>
  • scroll-y 属性控制滚动方向

swiper和swiper-item基本使用

  • swiper 标签包裹其他元素
<swiper class="swiper-container" indicator-dots><swiper-item><view class="item"> 1</view></swiper-item><swiper-item><view class="item">2</view></swiper-item><swiper-item><view class="item">3</view></swiper-item>
</swiper>
  • 🧨🧨🧨 indicator-dots 属性控制是否显示小圆点
  • autoplay属性控制是否自动切换
  • interval属性控制间隔时间
  • circular属性控制是否衔接滑动

基础内容组件

  • 🍳🍳🍳text:文本组件、类似于html中的span标签,一个行内元素
  • rich-text:富文本组件,支持把html字符串渲染为wxml结构

其它常用组件

  • button:可以通过open-type属性调用微信提供的各种功能(客服、转发、获取用户授权、用户信息等)
  • image:图片。支持 JPG、PNG、SVG、WEBP、GIF 等格式,2.3.0 起支持云文件ID。使用 svg 格式且 mode=scaleToFill 时,WebView 会居中(除非 svg 里加上preserveAspectRatio=“none”),Skyline 则会撑满。svg 格式不支持百分比单位。svg 格式不支持
<image src='https://res.wx.qq.com/wxdoc/dist/assets/img/0.4cb08bb4.jpg' mode="scaleToFill"/> 
//mode 属性控制图片裁剪、缩放的模式,

在这里插入图片描述

小程序Api

  • 🚜🚜🚜是由宿主环境提供的,通过这些丰富的小程序api,可以方便的调用微信提供的能力,如:获取用户信息,本地存储,支付功能等。

分为三大类

http://www.lryc.cn/news/431564.html

相关文章:

  • Java进阶13讲__第九讲
  • 上海市计算机学会竞赛平台2024年8月月赛丙组等差数列的素性
  • VR虚拟展厅的应用场景有哪些?
  • Go 语言版本管理——Goenv
  • C#中的各种画刷, PathGradientBrush、线性渐变(LinearGradientBrush)和径向渐变的区别
  • 如何在Mac中修改pip的镜像源
  • MySQL你必须知道的事
  • Ceph RBD使用
  • Spark MLlib模型训练—回归算法 Random forest regression
  • 华为OD机试真题-数大雁-2024年OD统一考试(E卷)
  • Oracle数据迁移:导出与导入的详细指南
  • SpringBoot实现前后端传输加密设计
  • X 射线测厚仪-高效精准,厚度测量的卓越之选
  • 10款好用的文件加密软件排行榜|文件加密管理软件推荐(合集篇)
  • 服务器蓝屏该怎么办
  • Elasticsearch:使用 inference API 进行语义搜索
  • PVE开启核显直通
  • 使用 Bert 做文本分类,利用 Trainer 框架实现 二分类,事半功倍
  • Obsidian git sync error / Obsidian git 同步失敗
  • 谷歌英文SEO外链如何做?
  • vue使用Export2Excel导出表格
  • Linux环境变量 本地变量 命令行参数
  • 向量数据库Faiss的搭建与使用
  • 微信小程序接入客服功能
  • mysql开启远程访问
  • 【NLP自然语言处理】文本处理的基本方法
  • uniapp使用defineExpose暴露和onMounted访问
  • 怎么使用matplotlib绘制一个从-2π到2π的sin(x)的折线图-学习篇
  • 【Java毕业设计】基于SpringBoot+Vue+uniapp的农产品商城系统
  • C++ | Leetcode C++题解之第390题消除游戏