【小程序开发】常见的内置组件

news/2025/3/22 2:11:38

【小程序开发】常见的内置组件

文章目录

  • 【小程序开发】常见的内置组件
  • 写在前面
  • 一、Text文本组件
  • 二、Button按钮组件
    • 2.1 type属性
    • 2.2 open-type属性
  • 三、View视图组件
  • 三、Image图片组件
    • 3.1 mode属性
    • 3.2 wx.chooseMedia
  • 四、ScrollView滚动组件
  • 五、组件的共同属性

写在前面

🤗这里是前端程序员小张!

🌻人海茫茫,感谢这一秒你看到这里。希望我的文章对你的有所帮助!

🌟愿你在未来的日子,保持热爱,奔赴山海!

一、Text文本组件

Text组件用于显示文本, 类似于span标签, 是行内元素

常见属性

属性类型默认值必填说明
user-selectbooleanfalse文本是否可选,该属性会使文本节点显示为 inline-block
spacestring显示连续空格
decodebooleanfalse是否解码

二、Button按钮组件

Button组件用于创建按钮,默认块级元素

常见属性

属性类型默认值必填说明
sizestringdefault按钮的大小
typestringdefault按钮的样式类型
plainbooleanfalse按钮是否镂空,背景色透明
disabledbooleanfalse是否禁用
hover-classstringbutton-hover指定按钮按下去的样式类。当 hover-class="none" 时,没有点击态效果
open-typestring微信开放能力

2.1 type属性

<button size="mini" type="primary">type-primary</button>
<button size="mini" type="default">type-default</button>
<button size="mini" type="warn">type-warn</button>
<button size="mini" class="btn">自定义属性</button>

在这里插入图片描述

2.2 open-type属性

open-type用户获取一些特殊性的权限,可以绑定一些特殊的事件

合法值说明
contact打开客服会话,如果用户在会话中点击消息卡片后返回小程序,可以从 bindcontact 回调中获得具体信息,具体说明 (小程序插件中不能使用
share触发用户转发,使用前建议先阅读使用指引
getPhoneNumber获取用户手机号,可以从bindgetphonenumber回调中获取到用户信息,具体说明 (小程序插件中不能使用
getUserInfo获取用户信息,可以从bindgetuserinfo回调中获取到用户信息 (小程序插件中不能使用
launchApp打开APP,可以通过app-parameter属性设定向APP传的参数具体说明
openSetting打开授权设置页
feedback打开“意见反馈”页面,用户可提交反馈内容并上传日志,开发者可以登录小程序管理后台后进入左侧菜单“客服反馈”页面获取到反馈内容
chooseAvatar获取用户头像,可以从bindchooseavatar回调中获取到头像信息

三、View视图组件

视图组件—块级元素,独占一行,通常用作容器组件

属性

属性类型默认值必填说明
hover-classstringnone指定按下去的样式类。当 hover-class="none" 时,没有点击态效果
hover-stop-propagationbooleanfalse指定是否阻止本节点的祖先节点出现点击态
hover-start-timenumber50按住后多久出现点击态,单位毫秒
hover-stay-timenumber400手指松开后点击态保留时间,单位毫

三、Image图片组件

Image组件用于显示图片

  • image组件默认宽度320px、高度240px

属性

属性类型默认值必填说明
srcstring图片资源地址
modestringscaleToFill图片裁剪、缩放的模式

3.1 mode属性

合法值说明
scaleToFill缩放模式,不保持纵横比缩放图片,使图片的宽高完全拉伸至填满 image 元素
aspectFit缩放模式,保持纵横比缩放图片,使图片的长边能完全显示出来。也就是说,可以完整地将图片显示出来。
aspectFill缩放模式,保持纵横比缩放图片,只保证图片的短边能完全显示出来。也就是说,图片通常只在水平或垂直方向是完整的,另一个方向将会发生截取。
widthFix缩放模式,宽度不变,高度自动变化,保持原图宽高比不变
heightFix缩放模式,高度不变,宽度自动变化,保持原图宽高比不变
top裁剪模式,不缩放图片,只显示图片的顶部区域
bottom裁剪模式,不缩放图片,只显示图片的底部区域
center裁剪模式,不缩放图片,只显示图片的中间区域
left裁剪模式,不缩放图片,只显示图片的左边区域
right裁剪模式,不缩放图片,只显示图片的右边区域
top left裁剪模式,不缩放图片,只显示图片的左上边区域
top right裁剪模式,不缩放图片,只显示图片的右上边区域
bottom left裁剪模式,不缩放图片,只显示图片的左下边区域
bottom right裁剪模式,不缩放图片,只显示图片的右下边区域

具体详情参考官方文档:image | 微信开放文档 (qq.com)

3.2 wx.chooseMedia

拍摄或从手机相册中选择图片或视频。

参数

  • count

    • 默认值:9
    • 最多可以选择的文件个数,基础库2.25.0前,最多可支持9个文件,2.25.0及以后最多可支持20个文件
  • mediaType 文件类型

    • image 只能拍摄图片或从相册选择图片
    • video 只能拍摄视频或从相册选择视频
    • mix 可同时选择图片和视频
  • sourceType 图片和视频选择的来源

    • album 从相册选择
    • camera 使用相机拍摄

举个栗子:选择本地图片,将其使用image展示

<button bindtap="onChooseImage">选择图片</button>
<image src="{{chooseImageUrl}}" mode="widthFix" />
  onChooseImage() {wx.chooseMedia({mediaType: 'image'}).then(res => {const imagePath = res.tempFiles[0].tempFilePaththis.setData({ chooseImageUrl: imagePath })})}

四、ScrollView滚动组件

scroll-view可以实现局部滚动

常见的属性

属性类型默认值必填说明
scroll-xbooleanfalse允许横向滚动
scroll-ybooleanfalse允许纵向滚动
bindscrolltouppereventhandle滚动到顶部/左边时触发
bindscrolltolowereventhandle滚动到底部/右边时触发
bindscrolleventhandle滚动时触发,event.detail = {scrollLeft, scrollTop, scrollHeight, scrollWidth, deltaX, deltaY}

纵向滚动

<scroll-view class="container-y" scroll-y><block wx:for="{{viewColors}}" wx:key="*this"><view class="item" style="background: {{item}};">{{item}}</view></block>
</scroll-view>
.container-y {height: 150px;background-color: cornflowerblue;
}
.item {width: 100px;height: 100px;
}

横向滚动

<scroll-view class="container-x" scroll-x enable-flex><block wx:for="{{viewColors}}" wx:key="*this"><view class="item" style="background: {{item}};">{{item}}</view></block>
</scroll-view>
.container-x {height: 150px;background-color: cornflowerblue;display: flex;
}
.item {width: 100px;height: 100px;flex-shrink: 0;
}

五、组件的共同属性

属性名类型描述注解
idString组件的唯一标识整个页面唯一
classString组件的样式类在对应的WXSS中定义的样式类
styleString组件的内联样式可以动态设置的内联样式
hiddenBoolean组件是否显示所有组件默认显示
data-*Any自定义属性组件上触发事件时,会发送给事件处理函数
bind*/catch*EventHandler组件的事件

https://dhexx.cn/news/show-969718.html

相关文章

省略号怎么打

在中文输入法状态以及中文标点状态下&#xff0c;用shift键加数字6中文标点输入和英文标点输入可以用Ctrl .(句号)键相互切换

vs.net 2003安装时提示缺少组件FrontPage服务器扩展

问题&#xff1a; vs.net 2003安装时提示缺少组件"FrontPage服务器扩展" 如题&#xff0c;vs.net 2003在FAT32格式的系统中安装时提示缺少组件"FrontPage服务器扩展"&#xff0c;但我在IIS中已经安装了FrotPage扩展&#xff0c;后来Google了一下&#xff…

编写数据库操作类,使ASP.NET中的数据库操作变得简单

1ASP.NET中一般都是使用SQL Server作为后台数据库。一般的ASP.NET数据库操作示例程序都是使用单独的数据访问&#xff0c;就是说每个页面都写连接到数据库&#xff0c;存取数据&#xff0c;关闭数据库的代码。这种方式带来了一些弊端&#xff0c;一个就是如果你的数据库改变了&…

VMware7安装Fedora12的问题

Vmware一直是业内公认的专业虚拟机产品&#xff0c;它的许多功能&#xff0c;比如克隆、快照让我们程序员大大缩短了安装、调试OS的时间&#xff0c;一些喜欢冒险、从事危险实验的极客们也不用担心会对本地文件系统造成的损坏。网上有介绍说Vmware7增加了对Windows7的支持&…

Remoting學習(二)----用Reomoting 實現信息發送功能的代碼實現

昨天的那篇隨筆﹐全部是使用配置文件來實現的。那么根據配置文件﹐如何生成代碼訪問模式?1﹑首先將RemoteServer 和RemoteClient中的App.Config文件移除專案﹐注意是移除﹐不是刪除﹐要不﹐你以后要想再使用配置文件話﹐直接包含進來就可以啦。2﹑在frmServer的建構改為﹕pub…

VM7.0虚拟机安装Fodera12后上网设置(局域网上网)

首先在windows XP 中&#xff0c;查看所有的网络连接&#xff0c;你应该发现除了原有的网卡之外&#xff0c;又多了Vmnet1和Vmnet8。如果你看了一下说明书应该知道&#xff0c;vmnet1是hostonly的接口&#xff0c;而Vmnet8是使用NAT的网络接口。在这里我们既不想用VMWARE自带的…

[重要公告]成都.NET俱乐部

各位俱乐部会员大家好&#xff0e;  为了俱乐部的长期发展&#xff0c;经过一段时间的思考&#xff0c;现俱乐部和成都软件行业协会合作&#xff0e;以整合更多的资源&#xff0e;并正式命名为成都程序员俱乐部&#xff0e;目前成都程序员俱乐部将包括成都JAVA俱乐部&#xf…

近几天 用微芯力科的板子 调试usb虚拟串口的程序,发现一些问题以及解决方法。和大家共享

近几天 用微芯力科的板子 调试usb虚拟串口的程序&#xff0c;发现一些问题以及解决方法。和大家共享 主要问题是 串口有时收到乱码 有时收到丢包数据&#xff1a; 关于 乱码 我们其实很容易想到 奇偶校验的问题&#xff0c;而我们平常都是默认为没有奇偶校验。 请看程序…

STM32 USB 程序将BULK EP改成双缓冲机制后,接收OUT数据的速度从原先的500KB/S,

前天测试自己编写的USB驱动程序时候发现从主机到STM32的OUT传输&#xff08;主机到设备&#xff09;速率竟然只有最高33KB/S&#xff0c;实在是晕死了。经过研究后发现是驱动程序中设置的PIPE MaxTransferSize参数的关系&#xff0c;原先设置64只能33KB/S&#xff0c;后参考其他…

品味都市爱情

"爱情是什么&#xff1f;"这是一个萦绕在现代都市无数男女心头的问题。或许&#xff0c;在一个周末的下午&#xff0c;坐在咖啡厅或者情调酒吧里&#xff0c;眺望着窗外那熟悉而陌生的景致&#xff0c;静静地独自品尝手中的一杯热咖啡&#xff0c;你就可能发现答案。…