【微信小程序开发】第 7 课 - 小程序的组件

news2024/12/21 16:48:21

          欢迎来到博主 Apeiron 的博客,祝您旅程愉快 ! 时止则止,时行则行。动静不失其时,其道光明。


目录

1、缘起

2、小程序中组件的分类

3、常用的视图容器类组件 

3.1、view 组件

3.2、scroll - view 组件

3.3、swiper 和 swiper-item 组件

3.4、text  组件的基本使用

3.5、rich-text 组件

3.6、button 组件 

3.7、image 组件

4、总结 


1、缘起

        小程序的组件包括视图容器、文本、图片、按钮、输入框、列表、轮播图、导航栏、下拉菜单和弹窗等,用于构建小程序界面和实现交互功能。


2、小程序中组件的分类

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

①  视图容器

②  基础内容

③  表单组件

④  导航组件

  媒体组件

  map 地图组件

  canvas  画布组件

⑧  开放能力

⑨  无障碍访问

注:上述标红的文字是工作中常用的四大组件。


3、常用的视图容器类组件 

3.1、view 组件

①  普通视图区域

②  类似于 HTML 中的 div ,是一个块级元素

③  常用来实现页面的布局效果

示例代码:

.wxml 

<!--pages/list/list.wxml-->
<view class = "square">
  <view>A</view>
  <view>B</view>
  <view>C</view>
</view>

.wxss 

/* pages/list/list.wxss */
/* 后代选择器 */
.square view{
  width:100px;
  height:100px;
  text-align: center;

  /* 用于设置所选元素内文本的行高为100像素,这将使文本在元素的垂直中心位置垂直居中。 */
  line-height:100px; 
}

.square view:nth-child(1){
  background-color: lawngreen;
}

.square view:nth-child(2){
  background-color: #ffd700;
}

.square view:nth-child(3){
  background-color: #ed5736;
}

.square {
  display:flex;
  justify-content: space-around;
}


3.2、scroll - view 组件

①  可滚动的视图区域

②  常用来实现滚动列表效果

示例代码:

.wxml

<!--pages/list/list.wxml-->
<scroll-view class = "container1" scroll-y>
  <view>A</view>
  <view>B</view>
  <view>C</view>
</scroll-view>

        ①  scroll-y  属性:允许纵向滚动

        ②  scroll-x  属性:允许横向滚动

        ③  注意:使用竖向滚动时,必须给 scroll-view 一个固定的高度 

.wxss 

示例代码: 

/* pages/list/list.wxss */
/* 后代选择器 */
.container1 view{
  width:100px;
  height:100px;
  text-align: center;

  /* 用于设置所选元素内文本的行高为100像素,这将使文本在元素的垂直中心位置垂直居中。 */
  line-height:100px; 
}

.container1 view:nth-child(1){
  background-color: lawngreen;
}

.container1 view:nth-child(2){
  background-color: #ffd700;
}

.container1 view:nth-child(3){
  background-color: #ed5736;
}

.container1 {
  border: 1px solid red;
  width:100px;
  height:150px;
}

注:把鼠标放在方块内上下拖动,就可以实现纵向滚动效果。 


3.3、swiper 和 swiper-item 组件

        轮翻 banner 容器组件和轮翻 banner  item 组件。 

swiper 组件的基本属性 

示例代码:

①  .wxml

<!--pages/list/list.wxml-->
<!-- indicator-dots  属性:显示面板指示点 -->
<swiper class="swiper-container" indicator-dots indicator-color="white" indicator-active-color="gray" autoplay interval="3000" circular>
  <!-- 第1项 -->
  <swiper-item>
      <view class="item">A</view>
  </swiper-item>

  <!-- 第2项 -->
  <swiper-item>
      <view class="item">B</view>
  </swiper-item>

  <!-- 第3项 -->
  <swiper-item>
      <view class="item">C</view>
  </swiper-item>
</swiper>

②  .wxss 

/* pages/list/list.wxss */
.swiper-container{
  height:150px; /*轮播图容器的高度*/
}

.item {
  height:100%;
  line-height:150px;
  text-align:center;
}

swiper-item:nth-child(1) .item {
  background-color:lightgreen;
}

swiper-item:nth-child(2) .item {
  background-color:#ed5736;
}

swiper-item:nth-child(3) .item {
  background-color:#ffd700;
}

注:上述代码就可以实现一个轮播图的效果。 


3.4、text  组件的基本使用

        ①  文本组件

        ②  类似于 HTML 中的 span 标签,是一个行内元素

作用:通过 text 组件的 selectable 属性,实现长按选中文本内容的效果

示例代码: 

<!--pages/list/list.wxml-->
<view>
  长按选中文本内容的效果 
  <text selectable>Hello Applet</text>
</view>

        在模拟器中,不能实现长按选中文本内容的效果,只能在手机上预览,然后查看长按选中文本内容的效果。


3.5、rich-text 组件

①  富文本组件

②  支持把 HTML 字符串渲染为 WXML 结构 

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

示例代码: 

<!--pages/list/list.wxml-->
<rich-text nodes="<h1 style='color:red;'>标题</h1>"></rich-text>


3.6、button 组件 

①  按钮组件

②  功能比 HTML 中的 button 按钮丰富

③  通过 open-type 属性可以调用微信提供的各种功能(客服、转发、获取用户授权、获取用户信息等)

button 按钮的基本使用 

示例代码:

<!--pages/list/list.wxml-->

<!-- 按钮组件的基本使用 -->

<!-- 通过 type 属性指定按钮颜色类型 -->
<button>默认按钮</button>
<button type="primary">主色调按钮</button>
<button type="warn">警告按钮</button>

<!-- size="mini" 小尺寸按钮 -->
<button size="mini">默认按钮</button>
<button type="primary" size="mini">主色调按钮</button>
<button type="warn" size="mini">警告按钮</button>

<!-- plain 镂空按钮 -->
<button size="mini" plain="">默认按钮</button>
<button type="primary" size="mini" plain>主色调按钮</button>
<button type="warn" size="mini" plain>警告按钮</button>


3.7、image 组件

①  image  组件的 mode 属性 

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

②  image 组件的基本使用

示例代码: 

<!--pages/list/list.wxml-->

<!-- image 空图片 -->
<image></image>

<image src="/images/Photo13.jpg"></image>

注:上述代码和图片展示 image 的 mode 默认属性效果,mode 的其他属性,请各位读者自行体验查看。


4、总结 

        本期的分享总结就到这里了,如果有疑问的小伙伴儿,我们在评论区交流嗷~~~,笔者必回,我们下期再见啦 ! 

博客中难免存在疏漏和错误之处,皆归因于作者水平有限,诚请各位读者不吝指正 !

< 前端 - CSS >  专栏系列持续更新 ,欢迎订阅关注 !

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/653383.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【youcans动手学模型】Xception 模型-CIFAR10图像分类

欢迎关注『youcans动手学模型』系列 本专栏内容和资源同步到 GitHub/youcans 【youcans动手学模型】Xception 模型-CIFAR10图像分类 1. Xception 神经网络模型1.1 模型简介1.2 论文介绍1.3 分析与讨论 2. 在 PyTorch 中定义 Xception 模型类2.1 深度可分离卷积2.2 带残差连接的…

【九章斩题录】从尾到头打印链表(JZ6)

精品题解 &#x1f525; 《九章斩题录》 &#x1f448; 猛戳订阅 目录 JZ6 - 从尾到头打印链表 「 法一 」链表元素存入数组后再反转 「 法二 」递归大法 「 法三 」栈 JZ6 - 从尾到头打印链表 &#x1f4da; 题目&#xff1a;输入一个链表的头节点&#xff0c;按链表从…

苹果iOS 17新功能:重置密码 72 小时内可使用旧密码再次重置

一些用户可能会遇到&#xff0c;在修改了 iPhone 密码之后&#xff0c;突然忘记新密码的情况。现在苹果在 iOS 17 中加入了新的解决方案&#xff1a;在重置密码的 72 小时之内&#xff0c;如果用户不小心忘记了新设置的密码&#xff0c;仍然可以使用旧密码进行再次重置。 在重…

TS系列之工具类型Partial、Required、Pick、Record详解,示例

TS系列之工具类型Partial、Required、Pick、Record详解&#xff0c;示例 文章目录 前言一、Partial<Type>二、Required<Type>三、Pick<Type, Keys>四、Record<Keys, Type>总结 前言 本片文章主要利用上一篇所学的keyof做一个延申与扩展的学习。在Type…

OpenGaussDB2.0.1

目录 1. GaussDB版本2. OpenGaussDB介绍3. 单节点安装3.1 环境配置3.2 安装 4. 远程连接设置 1. GaussDB版本 GaussDB的版本&#xff1a; GaussDB 100&#xff1a;目前暂不发布&#xff0c;公司合作伙伴需向华为提交申请&#xff08;GaussDB 100 将在 2020 年被正式命名为 Gaus…

Redis入门 - 3种特殊数据类型

原文首更地址&#xff0c;阅读效果更佳&#xff01; Redis入门 - 3种特殊数据类型 | CoderMast编程桅杆https://www.codermast.com/database/redis/three-special-datatype.html 在我们平常的业务中基本只会使用到Redis的基本数据类型&#xff08;String、List、Hash、Set、S…

浅谈.NET语言开发应用领域

.NET语言是一种跨平台的开发框架&#xff0c;适用于各种应用程序的开发。以下是一些常见的.NET语言开发应用领域&#xff1a; 桌面应用程序开发&#xff1a;使用.NET框架开发的桌面应用程序可以在Windows操作系统上运行&#xff0c;包括Windows Forms和WPF。这些应用程序可以用…

CentOS开机报错““error can‘t find command ‘:‘“处理方法

CentOS开机报错"error cant find command :"处理方法 本文为故障描述和问题记录。converterP2V迁移CentOS7到虚拟机&#xff0c;开机报错"error can’t find command ‘:’"的处理方法。 本文为CentOS7的操作记录&#xff0c;其他版本可以参考&#xff0c;…

CASAIM光学彩色三维扫描仪助力文物艺术品三维数字化3D打印

文物艺术品数字化&#xff0c;实际上是一种文物艺术品信息的记录方式&#xff0c;除了运用视频、照片、录音等多媒体形式将某些文物进行记录外&#xff0c;文物艺术品数字化主要是指针对有形文化遗产采用非接触式扫描得到的三维数字化记录&#xff0c;通过实景三维建模&#xf…

GitHub 上传自己的项目

文章目录 前言一、步骤1.GitHub 创建项目2.Git 上传本地项目到 GitHub3.Git 命令整理 总结 前言 不附 Demo 连接的博客不是好博客&#xff0c;所以我们要做个乐于助人&#xff0c;有责任心的人&#xff0c;这篇文章手把手教你如何在 GitHub 上传自己的项目&#xff0c; 一、步…

【OpenMMLab AI实战营二期笔记】第五天 MMPretrain代码课

1.环境安装 conda activate mmpre # 激活创建好的环境,确保安装好pytorch,可以使用gpu git clone https://github.com/open-mmlab/mmpretrain.git # 下载mmpre源码 cd mmpretrain # 进入mmpretrian目录 pip install openmim # 安装管理工具 mim install -e ".[multimodal…

JAVA开发运维(系统上到生产环境准备工作)

一、前言 java项目在开发环境开发完成&#xff0c;在测试环境测试没有问题后&#xff0c;就需要发布到生产环境&#xff0c;如果系统是对公众的&#xff0c;那就需要很多工作了。比如服务器申请&#xff0c;域名申请&#xff0c;渗透测试&#xff0c;漏洞扫描&#xff0c;公网…

第二章(第二节):导数与微分

1.导数与微分 1.导数概念 设曲线 L 的方程 y=f(x),a ≤ x ≤ b,x0 ∈ (a, b),在曲线 L 上的点 M0(x0, y0) 附近任取一点 M(x0 + Δx, y0 + Δy),过 M0 与 M 作曲线的割线M~0~M,的斜率为:当 x→x0 时,点 M 沿着曲线 L 趋向 M0,与此同时,割线 M0M 趋向一个极限位置 M0T…

想要转行的一定要看软件测试发展简史+学习路线

迄今为止&#xff0c;软件测试的发展一共经历了五个重要时期&#xff1a; 调试为主 20世纪50年代&#xff0c;计算机刚诞生不久&#xff0c;只有科学家级别的人才会去编程&#xff0c;需求和程序本身也远远没有现在这么复杂多变&#xff0c;相当于开发人员一人承担需求分析&am…

idea设置注释模板

目录 设置注释文件模板设置模板 设置注释文件模板 Ctrl Alt S 打开设置&#xff0c;Editor - File and Code Templates 选择class、interface、enum根据自己需要选择需要添加注释的文件&#xff0c;依次添加如下配置内容 /**1. ClassName ${NAME}2. Description TODO3. Aut…

BUUCTF Unencode 1

题目描述&#xff1a; 密文&#xff1a; 89FQA9WMD<V1A<V1S83DY.#<W3$Q,2TM]解题思路&#xff1a; 1、观察密文&#xff0c;尝试Base85、Base91等编码&#xff0c;均失败。 2、结合题目&#xff0c;联想到UUencode编码&#xff0c;尝试后成功&#xff0c;得到flag。 …

驱动LSM6DS3TR-C实现高效运动检测与数据采集(5)----上报匿名上位机实现可视化

概述 lsm6ds3trc包含三轴陀螺仪与三轴加速度计。 姿态有多种数学表示方式&#xff0c;常见的是四元数&#xff0c;欧拉角&#xff0c;矩阵和轴角。他们各自有其自身的优点&#xff0c;在不同的领域使用不同的表示方式。在四轴飞行器中使用到了四元数和欧拉角。 姿态解算选用的…

SpringBoot配置多数据源

SpringBoot配置多数据源 最近在做一个SpringBoot项目时需要关联两个数据库,于是乎我就研究了下关于springboot的多数据源配置,记录配置过程,分享一下 一、基础配置 (这里只展示主要配置) JDK1.8springBoot2.3.4.RELEASEmybatis2.1.0mysql-connector-java 8.0.21maven仓…

知乎家居产品种草营销怎么做?

近年来&#xff0c;家居产品种草营销已经成为了一种新型营销方式。知乎作为全球最大的中文问答社区&#xff0c;拥有着海量的用户和优质内容&#xff0c;逐渐成为了家居产品种草营销中不可忽视的平台。那么&#xff0c;在这个平台上如何进行家居产品种草营销呢&#xff1f;接下…

Python之函数【三】(高阶函数和闭包)

文章目录 前言一、高阶函数二、闭包&#xff08;也称之为&#xff1a;闭包函数&#xff09; 1、浅谈闭包函数 1.1、划重点1.2、注意点2、怎么判断是不是闭包函数呢&#xff1f; 2.1、那接下来&#xff0c;我们就细细的拆开解释2.2、对于这个作用域&#xff0c;在JavaSc…