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

小程序组件 —— 22 组件案例 - 轮播区域绘制

这一节我们实现轮播图最外层的盒子,也就是把轮播图的最外层搭好,先不给轮播图添加图片,因为图片属于新的组件,组件里面有一些知识点,需要单独分开讲;

回顾一下,在进行传统网页开发时,实现轮播图的时候,我们首先使用 html、css 实现轮播图的结构样式,然后使用 JS 控制轮播图的效果,或者直接使用插件实现轮播图的功能,而在小程序中实现小程序功能则相对简单很多;

在小程序中,如果想实现轮播图,只需要两个组件:swiperswiper-item

  • swiper:滑块视图容器,可以简单理解为轮播图最外层的容器,是轮播图的盒子,swiper 中不能放置其它任何内容,只能放置 swiper-item 组件,如果放置了其它内容,内容是不会进行展示的;
  • swiper-item:只可放置在 swiper 组件中,宽高自动设置为 100%,也就是占满 swiper 这个容器的宽和高,代表 swiper 中的每一项,也就是每一张轮播图;

下面打开微信开发者工具,实现轮播图最外层的结构:

  • 切换到首页目录,打开 index.wxml 文件,在轮播图区域中实现轮播图的结构,在最外层写一个 swiper,swiper 是轮播图最外层的盒子,注意在 swiper 内部只能设置 swiper-item,在 swiper-item 中编写内容才能在页面上正常显示编写的内容;我们需要三张轮播图,所以需要三个 swiper-item,其代码如下:

    <view class="swiper"><swiper><swiper-item>1</swiper-item><swiper-item>2</swiper-item><swiper-item>3</swiper-item></swiper>
    </view>
    

    通过上面的代码就已经把轮播图的结构写好了,我们可以到模拟器中滑动界面观察轮播图的效果:

    在这里插入图片描述

  • 由于我们还没有编写 css 样式,所以目前轮播图的效果还不是很明显,下面我们来添加一些样式,我们打开 index.scss 文件,添加对应的样式代码如下:

    // 轮播图区域样式
    .swiper {swiper {height: 360rpx;background-color: skyblue;swiper-item{// & 在 Sass 中代表的是父选择器,引用的意思// swiper-item:first-child 表示取父选择器的第一个 swiper-item// swiper-item:last-child 表示取父选择器的最后一个 swiper-item&:first-child{background-color: lightsalmon;}&:last-child{background-color: lightseagreen;}}}
    }
    

    这里为了区分不同的 swiper-item,使用伪类选择器来设置不同 swiper-item 的背景颜色,具体效果如下:

    在这里插入图片描述

  • 目前轮播图是不能够自动播放的,需要通过手动进行滑动,如果想轮播图自己播放,需要给 swiper 添加一个 autoplay 属性 ,这个属性接收一个布尔值作为参数,我们设置为 true,即可实现自动播放效果:

    在这里插入图片描述
    如果一个属性的值是布尔值,属性值可以不写,不写表示其值为 true,这样我们同样可以实现自动播放效果,如下:

在这里插入图片描述

  • 设置了自动切换之后,可以继续设置切换间隔时长,我们可以在 swiper 中使用 interval 属性设置切换间隔,这里我们设置为间隔 1s 进行切换,如下:

在这里插入图片描述

  • 设置自动切换、切换时长后,我们可以继续对轮播图添加其它属性,比如指示当前是第几场轮播图的选点功能,我们可以在 swiper 中添加一个 indicator-dots 属性,其属性值是布尔值,因此我们可以不填属性值,默认为 true,具体如下所示:

在这里插入图片描述

  • 如果感觉选点不符合样式需求,可以根据实际情况进行修改,比如可以使用 indicator-color 属性修改选点的颜色,如下:

在这里插入图片描述

  • 上面被激活的选点的颜色为黑色,如果我们觉得不好看,可以在 swiper 中使用 indicator-active-color 属性来调整激活后选点的颜色:

在这里插入图片描述

  • 目前轮播图到第三张图片之后,会往前切换到第一张,当我们希望轮播图往后切换到第一张的时候,这个时候我们可以加另外一个 circular 属性,其属性值为布尔值,所以我们可以不写属性值,默认为 true,如下所示:

在这里插入图片描述

上面只讲了 swiper 中的一部分属性功能,具体更详细的功能,可以前往官方文档进行学习;

参考视频:尚硅谷微信小程序开发教程

相关文章:

小程序组件 —— 22 组件案例 - 轮播区域绘制

这一节我们实现轮播图最外层的盒子&#xff0c;也就是把轮播图的最外层搭好&#xff0c;先不给轮播图添加图片&#xff0c;因为图片属于新的组件&#xff0c;组件里面有一些知识点&#xff0c;需要单独分开讲&#xff1b; 回顾一下&#xff0c;在进行传统网页开发时&#xff0…...

如何判断一个学术论文是否具有真正的科研价值?ChatGPT如何提供帮助?

目录 1.创新性与学术贡献的超级加分✔ 2.科研过程中的各个环节—从0到1✔ 3.创新性与理论深度的完美结合✔ 4.论证与写作的清晰性✔ 5.数据整理和文献回顾——效率与精准并存✔ 6.创新性要求辅助✔ 总结 宝子们&#xff0c;学术论文写作的旅程是不是感觉像是走进了迷雾森…...

【置顶】测试学习笔记整理

一、测试开发体系介绍 1.软件测试概念 &#xff08;1&#xff09;【理论】软件测试基础概念&#xff1a;软件测试概念、作用、原则、对象&#xff0c;软件缺陷、测试用例 &#xff08;2&#xff09;【理论】软件开发流程扫盲&#xff1a;敏捷开发&#xff08;XP、SCRUM&#…...

新浪微博Java开发面试题及参考答案

怎么判断两个链表是否相交?怎么优化? 判断两个链表是否相交可以采用多种方法。 一种方法是使用双指针。首先分别遍历两个链表,得到两个链表的长度。然后让长链表的指针先走两个链表长度差的步数。之后,同时移动两个链表的指针,每次比较两个指针是否指向相同的节点。如果指…...

【SQL Server】教材数据库(1)

1 利用sql建立教材数据库&#xff0c;并定义以下基本表&#xff1a; 学生&#xff08;学号&#xff0c;年龄&#xff0c;性别&#xff0c;系名&#xff09; 教材&#xff08;编号&#xff0c;书名&#xff0c;出版社编号&#xff0c;价格&#xff09; 订购&#xff08;学号…...

Windows系统下载、部署Node.js与npm环境的方法

本文介绍在Windows电脑中&#xff0c;下载、安装并配置Node.js环境与npm包管理工具的方法。 Node.js是一个基于Chrome V8引擎的JavaScript运行时环境&#xff0c;其允许开发者使用JavaScript编写命令行工具和服务器端脚本。而npm&#xff08;Node Package Manager&#xff09;则…...

SQL 总结

SQL 总结 引言 SQL(Structured Query Language,结构化查询语言)是一种用于管理关系数据库管理系统(RDBMS)的标准编程语言。自1974年首次提出以来,SQL已成为数据库领域中不可或缺的一部分。它允许用户执行各种操作,如查询、更新、插入和删除数据库中的数据。本文旨在提…...

设计一个基于Spring Boot开发的电商网站,部署在阿里云上

系统架构设计&#xff0c;包含网络、部署架构等关键信息&#xff0c;要保证系统的高可用。设计中请明确指出使用的产品名称。 为了设计一个基于Spring Boot开发的电商网站系统架构&#xff0c;并确保其高可用性&#xff0c;以下是一个详细的系统架构设计方案&#xff0c;包含网…...

Java jni调用nnom rnn-denoise 降噪

介绍&#xff1a;https://github.com/majianjia/nnom/blob/master/examples/rnn-denoise/README_CN.md 默认提供了一个wav的例子 #include <stdint.h> #include <stdlib.h> #include <stdio.h> #include <math.h> #include <string.h>#include …...

C++软件设计模式之状态模式

在C设计模式中&#xff0c;状态模式&#xff08;State Pattern&#xff09;是一种行为设计模式&#xff0c;它允许对象在内部状态改变时改变其行为&#xff0c;使对象看起来似乎修改了其类。状态模式的主要动机、意图和适用场合如下&#xff1a; 动机 在面向对象的设计中&…...

Microsoft Visual Studio中的/MT, /MTd,/MD,/MDd分别是什么意思?

1. /MT&#xff0c;/MTd&#xff0c;/MD&#xff0c;/MDd的含义 /MT&#xff0c;/MTd&#xff0c;/MD&#xff0c;/MDd是 Microsoft Visual C 编译器的运行时库链接选项。它们决定了程序如何链接 C 运行时库&#xff08;CRT&#xff09;。具体含义如下&#xff1a; /MT&#x…...

谷粒商城项目125-spring整合high-level-client

新年快乐! 致2025年还在努力学习的你! 你已经很努力了&#xff0c;今晚就让自己好好休息一晚吧! 在后端中选用哪种elasticsearch客户端&#xff1f; elasticsearch可以通过9200或者9300端口进行操作 1&#xff09;9300&#xff1a;TCP spring-data-elasticsearch:transport-…...

日期时间选择(设置禁用状态)

目录 1.element文档需要 2.禁用所有过去的时间 3.设置指定日期的禁用时间 <template><div class"block"><span class"demonstration">起始日期时刻为 12:00:00</span><el-date-pickerv-model"value1"type"dat…...

基于SpringBoot的题库管理系统的设计与实现(源码+SQL+LW+部署讲解)

文章目录 摘 要1. 第1章 选题背景及研究意义1.1 选题背景1.2 研究意义1.3 论文结构安排 2. 第2章 相关开发技术2.1 前端技术2.2 后端技术2.3 数据库技术 3. 第3章 可行性及需求分析3.1 可行性分析3.2 系统需求分析 4. 第4章 系统概要设计4.1 系统功能模块设计4.2 数据库设计 5.…...

钉钉h5微应用安卓报错error29 ios报错error3 加上报错52013,签名校验失败 (前端)

这两个都是应为 免登报错52013&#xff0c;签名校验失败 用户后端签名使用的url地址和前端访问地址需要严格一致&#xff0c;包括端口号。前端部分可以用alert显示出当前的location.href&#xff0c;后端部分请在签名的时候打印日志。 访问通过反向代理服务器、各种NAT等场景下…...

Vue.js组件开发-客户端如何限制刷新Token次数

在Vue.js组件开发中&#xff0c;限制刷新Token的次数是一个重要的安全措施&#xff0c;可以防止恶意用户或攻击者无限次尝试刷新Token。 客户端限制 在客户端&#xff0c;可以通过Vuex、localStorage或sessionStorage等存储机制来跟踪刷新Token的尝试次数。以下是一个基本的实…...

Linux上安装jdk

在线环境的话&#xff0c;通过命令下载&#xff0c;离线环境的话&#xff0c;组要自行去oracle官网下载后上传 wget --no-check-certificate --no-cookies --header "Cookie: oraclelicenseaccept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jd…...

Ardunio BLE keyboard 库的使用

为了开发一个 ardunio 的蓝牙选歌器&#xff0c;网络上普遍推荐使用&#xff1a; https://github.com/T-vK/ESP32-BLE-Keyboard 结果搞了好几天&#xff0c;就是不行。最后发现&#xff0c;下面两点非常重要&#xff1a; 使用 NimBle-ardunio 库这个库目前是2.1.2 &#xff…...

django --递归查询评论

表数据 树状结构 action(methods(GET, ), detailFalse) def get_info_pinglun(self, request, *args, **kwargs) -> Response:根据评论id查所有回复params wenxian_pinglun_id --> 评论id;wenxian_pinglun_id self.request.GET.get(wenxian_pinglun_id)results se…...

【开源免费】基于SpringBoot+Vue.JS音乐网站(JAVA毕业设计)

本文项目编号 T 109 &#xff0c;文末自助获取源码 \color{red}{T109&#xff0c;文末自助获取源码} T109&#xff0c;文末自助获取源码 目录 一、系统介绍二、数据库设计三、配套教程3.1 启动教程3.2 讲解视频3.3 二次开发教程 四、功能截图五、文案资料5.1 选题背景5.2 国内…...

Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务

通过akshare库&#xff0c;获取股票数据&#xff0c;并生成TabPFN这个模型 可以识别、处理的格式&#xff0c;写一个完整的预处理示例&#xff0c;并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务&#xff0c;进行预测并输…...

HarmonyOS运动开发:如何用mpchart绘制运动配速图表

##鸿蒙核心技术##运动开发##Sensor Service Kit&#xff08;传感器服务&#xff09;# 前言 在运动类应用中&#xff0c;运动数据的可视化是提升用户体验的重要环节。通过直观的图表展示运动过程中的关键数据&#xff0c;如配速、距离、卡路里消耗等&#xff0c;用户可以更清晰…...

R语言速释制剂QBD解决方案之三

本文是《Quality by Design for ANDAs: An Example for Immediate-Release Dosage Forms》第一个处方的R语言解决方案。 第一个处方研究评估原料药粒径分布、MCC/Lactose比例、崩解剂用量对制剂CQAs的影响。 第二处方研究用于理解颗粒外加硬脂酸镁和滑石粉对片剂质量和可生产…...

Linux 内存管理实战精讲:核心原理与面试常考点全解析

Linux 内存管理实战精讲&#xff1a;核心原理与面试常考点全解析 Linux 内核内存管理是系统设计中最复杂但也最核心的模块之一。它不仅支撑着虚拟内存机制、物理内存分配、进程隔离与资源复用&#xff0c;还直接决定系统运行的性能与稳定性。无论你是嵌入式开发者、内核调试工…...

关于uniapp展示PDF的解决方案

在 UniApp 的 H5 环境中使用 pdf-vue3 组件可以实现完整的 PDF 预览功能。以下是详细实现步骤和注意事项&#xff1a; 一、安装依赖 安装 pdf-vue3 和 PDF.js 核心库&#xff1a; npm install pdf-vue3 pdfjs-dist二、基本使用示例 <template><view class"con…...

【从零开始学习JVM | 第四篇】类加载器和双亲委派机制(高频面试题)

前言&#xff1a; 双亲委派机制对于面试这块来说非常重要&#xff0c;在实际开发中也是经常遇见需要打破双亲委派的需求&#xff0c;今天我们一起来探索一下什么是双亲委派机制&#xff0c;在此之前我们先介绍一下类的加载器。 目录 ​编辑 前言&#xff1a; 类加载器 1. …...

MySQL:分区的基本使用

目录 一、什么是分区二、有什么作用三、分类四、创建分区五、删除分区 一、什么是分区 MySQL 分区&#xff08;Partitioning&#xff09;是一种将单张表的数据逻辑上拆分成多个物理部分的技术。这些物理部分&#xff08;分区&#xff09;可以独立存储、管理和优化&#xff0c;…...

elementUI点击浏览table所选行数据查看文档

项目场景&#xff1a; table按照要求特定的数据变成按钮可以点击 解决方案&#xff1a; <el-table-columnprop"mlname"label"名称"align"center"width"180"><template slot-scope"scope"><el-buttonv-if&qu…...

基于鸿蒙(HarmonyOS5)的打车小程序

1. 开发环境准备 安装DevEco Studio (鸿蒙官方IDE)配置HarmonyOS SDK申请开发者账号和必要的API密钥 2. 项目结构设计 ├── entry │ ├── src │ │ ├── main │ │ │ ├── ets │ │ │ │ ├── pages │ │ │ │ │ ├── H…...

2.3 物理层设备

在这个视频中&#xff0c;我们要学习工作在物理层的两种网络设备&#xff0c;分别是中继器和集线器。首先来看中继器。在计算机网络中两个节点之间&#xff0c;需要通过物理传输媒体或者说物理传输介质进行连接。像同轴电缆、双绞线就是典型的传输介质&#xff0c;假设A节点要给…...