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

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

写在前面

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

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

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

一、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].tempFilePath
      this.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组件的事件
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端程序员小张

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值