微信小程序--》你真的了解小程序组件的使用吗?

news2025/1/22 18:04:55

🏍️作者简介:大家好,我是亦世凡华、渴望知识储备自己的一名在校大学生

🛵个人主页:亦世凡华、

🛺系列专栏:微信小程序

🚲座右铭:人生亦可燃烧,亦可腐败,我愿燃烧,耗尽所有光芒。

👀引言

       ⚓经过web前端开发的学习,相信大家对于前端开发有了一定深入的了解,今天我开设了微信小程序专栏,主要想从移动端开发方向进一步发展,而对于我来说写移动端博文的第一站就是小程序开发,希望看到我文章的朋友能对你有所帮助。

目录

📚小程序—组件

📰组件的分类:(标红的为重点知识)

📃视图容器类组件

常用的视图容器类组件

view组件的使用(和web前端的 div 及其类似,招壶画瓢即可)

scroll-view组件的使用 (实现纵向滚动效果)

swiper 和 swiper-item 组件的使用(实现轮播图的效果)

swiper 组件常用属性介绍

📜基础内容组件

常用的基础内容组件

text组件的使用(实现长按选中文本内容的效果)

rich-text组件的使用(把 HTML 字符串渲染为对应的 UI 结构)

📑其他常用组件

button按钮的基本使用

image组件的基本使用

image组件中 mode 属性讲解


📚小程序—组件

小程序中的组件是由宿主环境提供的,开发者可以基于组件快速搭建出漂亮的页面结构。

📰组件的分类:(标红的为重点知识)

视图容器        ②基础内容        ③表单组件        ④导航组件        ⑤媒体组件        ⑥map地图组件        ⑦canvas画布组件        ⑧开放能力        ⑨原生组件        ⑩无障碍访问、导航栏以及页面属性配置节点。      

原本的组件分为九大类现在分为十二大类新增了原生组件的说明、导航栏以及页面属性配置节点,想了解更多组件的知识,推荐看一下 微信官方文档 对组件的说明。

📃视图容器类组件

名称功能说明名称功能说明
cover-image覆盖在原生组件之上的图片视图page-container页面容器
cover-view覆盖在原生组件之上的文本视图scroll-view可滚动视图区域
match-mediamedia query 匹配检测节点share-element共享元素
movable-areamovable-view的可移动区域swiper滑块视图容器
movable-view可移动的视图容器,在页面中可以拖拽滑动view视图容器
swiper-item仅可放置在swiper组件中,宽高自动设置100%

常用的视图容器类组件

view

        ●普通视图区域

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

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

scroll-view

        ●可滚动的视图区域

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

swiper 和 swiper-item

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

view组件的使用(和web前端的 div 及其类似,招壶画瓢即可)

<!--pages/person/person.wxml-->
<view class="view">
  我是相当于 div 的容器组件
  <view class="content">大家想了解更多<span>微信小程序</span>可以关注一下作者</view>
  <view class="content1">csdn搜索亦世凡华、哦</view>
</view>
/* pages/person/person.wxss */
.view{
  color: #f00;
  text-align: center;
  font-weight: bold;
}
.content span{
  font-size: 1.5em;
  color: #008c8c;
}
.content{
  color: #0f0;
  margin-top: 30px;
}
.content1{
  margin-top: 30px;
  color: #ffd345;
  font-size: 25px;
}

 

scroll-view组件的使用 (实现纵向滚动效果)

<!-- scroll-y 属性:允许纵向滚动 -->
<!-- scroll-x 属性:允许横向滚动 -->
<!-- 注意:使用竖向滚动时,必须给scroll-view 一个固定的高度 -->
<scroll-view class="container1" scroll-x>
  <view>手机</view>
  <view>电脑</view>
  <view>平板</view>
  <view>键盘</view>
</scroll-view>
/* pages/person/person.wxss */
.container1 view{
  width: 100px;
  height: 100px;
  text-align: center;
  line-height: 100px;
}
.container1 view:nth-child(1){
  background-color: #f00;
}
.container1 view:nth-child(2){
  background-color: #0f0;
}
.container1 view:nth-child(3){
  background-color: #00f;
}
.container1 view:nth-child(4){
  background-color: gold;
}
.container1{
  border: 1px solid red;
  width: 100px;
  height: 200px;
}

微信小程序中 container 是有默认样式的,其中就会是display:flex不起作用,推荐写类名的时候要避免出现使用含义特殊样式的关键字,否则程序可能会出现一些 Bug。

swiper 和 swiper-item 组件的使用(实现轮播图的效果)

<!-- 轮播图区域 -->
<!-- indicator-dots 属性:显示面板指示点 -->
<swiper class="swiper-container" indicator-dots>
<!-- 第一页 -->
<swiper-item>
  <view class="item">手机</view>
</swiper-item>
<!-- 第二页 -->
<swiper-item>
  <view class="item">电脑</view>
</swiper-item>
<!-- 第三页 -->
<swiper-item>
  <view class="item">平板</view>
</swiper-item>
<!-- 第四页 -->
<swiper-item>
  <view class="item">键盘</view>
</swiper-item>
</swiper>
/* pages/person/person.wxss */
.swiper-container{
  height: 150px; /* 轮播图容器的宽度 */
}
.item{
  height: 100%;
  line-height: 150px;
  text-align: center;
}
swiper-item:nth-child(1) .item{
  background-color: #f00;
}
swiper-item:nth-child(2) .item{
  background-color: #0f0;
}
swiper-item:nth-child(3) .item{
  background-color: #00f;
}
swiper-item:nth-child(4) .item{
  background-color: #ff0;
}

swiper 组件常用属性介绍

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

根据上述属性可以做一个简单的动图,大家仔细看一下变化。

📜基础内容组件

名称功能说明
text文本
rich-text富文本
icon图标组件
progress进度条

常用的基础内容组件

text

        ●文本组件

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

rich-text

        ●富文本组件

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

text组件的使用(实现长按选中文本内容的效果)

官方文档以前使用的selectable已经废弃,现在使用user-select,这里了解一下即可。

<view>
  进行手机号的复制:
  <!-- 复制要加上 user-select 才行 -->
  <text user-select>13333333333</text>
</view>

rich-text组件的使用(把 HTML 字符串渲染为对应的 UI 结构)

<rich-text nodes="<h1 style='color:red'>我是h1标题</h1>"></rich-text>

 

📑其他常用组件

button

        ●按钮组件

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

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

image

        ●图片组件

        ●image组件的默认宽度约为 300px,高度约为 240px

button按钮的基本使用

<view>-------通过 type 指定按钮类型---------</view>

<button>默认按钮</button>
<button type="primary">主色调按钮</button>
<button type="warn">警告按钮</button>

<view>--------size="mini" 小尺寸按钮--------</view>

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

<view>------------plain 镂空按钮--------------</view>

<button size="mini" plain="">普通按钮</button>
<button type="primary" size="mini" plain="">主色调按钮</button>
<button type="warn" size="mini" plain="">警告按钮</button>

 

image组件的基本使用

<!-- 空图片 -->
<image></image>
<!-- 图片 -->
<image src="/images/1.jpeg" mode="aspectFill"></image>
image{
  border: 1px solid red;
}

image组件中 mode 属性讲解

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

mode值说明
scaleToFill(默认值)缩放模式,不保持纵横比缩放图片,使图片宽高完全拉伸至填满image元素
aspectFit缩放模式,保持纵横比缩放图片,使图片的长边能完全显示出来
aspectFill缩放模式,保持纵横比缩放图片,只保证图片的短边能完全显示出来
widthFix缩放模式,宽度不变,高度自动变化,保持原图宽高比不变
heightFix缩放模式,高度不变,宽度自动变化,保持原图宽高比不变

今天的讲解就到这,下期继续讲解认知小程序的开发 ! 

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

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

相关文章

JAVA-分页查询

分页查询 分页查询将数据库中庞大的数据分段显示,每页显示用户自定义的行数,提高用户体验度,最主要的是如果一次性从服务器磁盘中读出全部数据到内存,有内存溢出的风险 真假分页 假分页: 其原理还是将所有的数据读到内存中,翻页从内存中读取数据, 优点: 实现简单,性能高 缺点…

HTML+CSS+JS网页设计期末课程大作业 京剧文化水墨风书画

Web前端开发技术 描述 网页设计题材&#xff0c;DIVCSS 布局制作,HTMLCSS网页设计期末课程大作业&#xff0c;茶文化网站 | 中华传统文化题材 | 京剧文化水墨风书画 | 中国民间年画文化艺术网站 | HTML期末大学生网页设计作业 HTML&#xff1a;结构 CSS&#xff1a;样式 在操作…

EasyExcel复杂表头导出(一对多)升级版

一、前言 在之前写的 EasyExcel复杂表头导出&#xff08;一对多&#xff09;的博客的结尾&#xff0c;受限于当时的能力和精力&#xff0c;留下一些问题及展望。现在写下此博客&#xff0c;目的就是解决之前遗留的问题。 背景介绍&#xff0c;见上述链接指向的博客&#xff0c;…

vue3 route和router的区别以及如何传参数接受参数,如何像vue2一样使用$route和$router详解

vue3 route和router的区别以及如何传参数接受参数&#xff0c;如何像vue2一样使用$route和$router详解 因为我们在 setup 里面没有访问 this&#xff0c;所以我们不能再直接访问 this.$router 或 this.$route。作为替代&#xff0c;我们使用 useRouter 和useRoute函数,或者 Vu…

HTML小游戏21 —— html5版暴打皮卡丘游戏(附完整源码)

&#x1f482; 网站推荐:【神级源码资源网】【摸鱼小游戏】&#x1f91f; 前端学习课程&#xff1a;&#x1f449;【28个案例趣学前端】【400个JS面试题】&#x1f485; 想寻找共同学习交流、摸鱼划水的小伙伴&#xff0c;请点击【摸鱼学习交流群】本节教程我会带大家使用 HTML…

微信小程序--基础内容(详解)(一)

一、常用标签 1、view 标签 view 标签是一个块级元素&#xff0c;类似于 div&#xff08;小程序里面没有div标签&#xff09;&#xff0c;里面可以放任何内容或者插值表达式&#xff0c;如下所示&#xff1a; <view>这是view标签<view> <view>{{num}}<…

谷歌新版本跨域错误深度剖析与解决:request client is not a secure context and the resource is in more-private address

快速解决&#xff1a; 最近在测试http服务时&#xff0c;谷歌浏览器报了以下错误 “The request client is not a secure context and the resource is in more-private address space ‘local’”. 从报错信息来看&#xff0c;“不安全的请求方请求了更私有的本地资源” 对于…

API接口开发其实特简单,Python Flask Web 框架教程来了

大家好&#xff0c;日常工作中&#xff0c;无论你是数据工程师、数据挖掘工程师&#xff0c;甚至数据分析人员&#xff0c;都不可避免的与他人进行数据交互&#xff0c;API接口提供数据是最常见的形式。 今天我给大家分享 Python Flask Web 框架教程&#xff0c;共计10个部分&…

Vue面试题你知道多少

✅作者简介&#xff1a;大家好我是hacker707,大家可以叫我hacker&#xff0c;新星计划第三季python赛道Top1&#x1f3c6; &#x1f4c3;个人主页&#xff1a;hacker707的csdn博客 &#x1f525;系列专栏&#xff1a;带你玩转Vue &#x1f4ac;推荐一款模拟面试、刷题神器&…

前端401错误 解决方法:响应拦截器

目录 1.该问题出现的原因 2.处理401问题的解决方案原理 3.使用响应拦截器解决问题 1.该问题出现的原因 在前后端分离项目中&#xff0c;最常见的是前端点击登录后&#xff0c;后端返回token字符串&#xff0c;这个token可以看作是一个“令牌”&#xff0c;就比如你去酒店办理…

Vue实战【调整Vue-element-admin中的菜单栏,并添加顶部模块菜单栏】

目录&#x1f31f;前言&#x1f31f;小伙伴们先看&#x1f31f;实现思路&#x1f31f;具体代码&#x1f31f;最后&#x1f31f;前言 因为最近在整合公司的项目&#xff0c;需要把所有系统里的功能集成到一个项目里&#xff0c;这样就导致菜单栏目录会特别的多&#xff0c;不便…

【JavaScript】手撕前端面试题:事件委托 | 判断URL是否合法 | 全排列

&#x1f5a5;️ NodeJS专栏&#xff1a;Node.js从入门到精通 &#x1f5a5;️ 博主的前端之路&#xff08;源创征文一等奖作品&#xff09;&#xff1a;前端之行&#xff0c;任重道远&#xff08;来自大三学长的万字自述&#xff09; &#x1f5a5;️ TypeScript知识总结&…

【Axure】Axure RP 9下载、安装、授权、汉化

目录一、Axure RP 9 下载二、Axure RP 9 安装三、Axure RP 9 授权四、Axure RP 9 汉化一、Axure RP 9 下载 1、Axure RP 9 下载地址&#xff1a;https://www.axure.com/release-history/rp9 2、其他版本下载地址 ①登录axure官网:https://www.axure.com/ ②拉到最下面找到相关…

很好看的爱心表白代码(动态)

分享几个好看的爱心表白代码❤️爱心代码❤️&#xff08;C语言&#xff09;❤️流动爱心❤️&#xff08;htmlcssjs&#xff09;❤️线条爱心❤️&#xff08;htmlcssjs&#xff09;❤️biu表白爱心❤️&#xff08;htmlcssjs&#xff09;❤️matlab爱心函数❤️&#xff08;需…

Vue3+TS+Vite 入门指南

最近尝试上手 Vue3TSVite&#xff0c;对比起 Vue2 有些不适应&#xff0c;但还是真香~ 上手前先说下 Vue3 的一些变化吧~ Vue3 的变化 Vue3 带来的变化主要有以下几个方面&#xff1a; 使用层面 对比起 Vue2 启动速度快很多&#xff0c;新项目从 1s 升级到不到 500msvite.co…

Element-UI新手学习记录(一)

Layout 布局 通过基础的 24 分栏&#xff0c;迅速简便地创建布局。 span的作用 一行默认24个span&#xff0c;属性放在el-col中决定此元素占据多少span gutter属性 放在el-row中&#xff0c;给各个块之前设置间隔&#xff0c;但是是割的代码块的宽度。 offset属性 放在el…

小程序页面之间数据传递的四种方法

近期再使用小程序开发的时候遇到小程序页面和页面之间的数据传递问题。总结一下大致有以下几种方式实现页面数据传递。 最常见的就是路由传参&#xff0c;使用场景主要是页面汇总的少量数据的传递。以下都以Tarovue示例&#xff0c;原生、react或者uniapp同理&#xff0c;替换…

Pinia(二)了解和使用Store

Store Store 是保存状态(state)和业务逻辑的实体, store 不应该与我们的组件绑定. 换句话说, store 就是全局状态.store 有三个关键概念, 分别是 state, getters 和 actions, 这与 Vue 组件中的 data, computed 和 methods 是相对应的概念. 定义 store 通过 defineStore 函数…

Vue页面路由参数的传递和获取

文章目录1. 通过动态路由参数传递2. 通过query字符串传递3. props 隐式传递vue 页面路由切换时传参的方式有如下几种&#xff1a; 动态路由参数 它隐藏字段信息&#xff0c;相对于来说较安全&#xff0c;同时地址栏中的地址也相对较短 它必须是先定义后使用&#xff0c;一般用…

关于嵌套使用 iFrame 出现 Refused to display in aframe 拒绝连接访问 和 ‘X-Frame-Options‘ to ‘SAMEORIGIN‘ 的解决方案【已解决】

目录问题描述原因分析问题解决总结今天在迁移旧项目时&#xff0c;出现了如下错误提示&#xff1a; Refused to display in a frame because it set X-Frame-Options to SAMEORIGIN问题描述 当前项目是一个生产环境正常运行的项目&#xff0c;由于我们要迁移服务器并且部署 k…