微信小程序 | 小程序的内置组件

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
简介: 微信小程序 | 小程序的内置组件

一、Text文本组件

Text组件解析

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

a399681851a24bf68fc9a1dfd55caaee.png

  • user-select属性决定 文本内容是否可以被用户选中
  • space有三个取值
  • decode是否解码
  • decode可以解析的有 <>&'

fe18b51eb5d640ad89995664020b2793.png

二、Button按钮组件

Button组件解析

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


常见属性:

4590cb10f6be48ebb66a47558f770366.png

Button组件代码

98bf82761f934cb0b54b4e5bd3eadd00.png

JavaScript
<!-- 附代码  -->
<!-- 1.按钮默认 块级元素  -->
<button>按钮</button>
<text>哈哈哈</text>
<!-- 2.size 属性 此时 是 行内块元素inline-block  width为auto mini跟defalut为值 -->
<button size="mini">按钮size属性</button>
<!-- 3.type属性 默认一些css样式 -->
<button size="mini" type="primary">按钮type属性</button>
<button size="mini" type="warn">按钮type属性</button>
<!-- 4.plain 镂空的意思  会给按钮加边框 不会有背景颜色了 -->
<button size="mini" plain>按钮plain属性</button>
<!-- 5.disabled属性 不能进行交互 -->
<button size="mini" disabled>disabled属性</button>
<!-- 6.loading属性 会加上加载效果 -->
<button size="mini" loading>loading属性</button>
<!-- 7.hover效果 hover-class 手指按下去之后 要做什么效果..  此时按钮点下去 背景变颜色-->
<button size="mini" hover-class="active">hover效果</button>

open-type属性


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

9401fa412f264eeeba7d5ca986dc2db1.png

5b95d087f5dc4055b487e18b98915cd2.png

JavaScript
<!-- 代码展示 -->
<view>------Button进阶用法------</view>
<!-- 二、进阶使用 -->
<!-- 1.open-type属性  open-type="contact" 比较少用-->
<button open-type="contact" size="mini" type="primary">打开会话</button>
<!-- 2.open-type属性  open-type="getUserInfo" 这里可以获取微信登录小程序的一些用户信息 -->
<!-- 以前是使用这种方法 拿微信信息 现在不行了 -->
<button open-type="getUserInfo" bindgetuserinfo="getUserInfo" size="mini" type="primary">用户信息</button>
<!-- 现在使用这种方法! -->
<button size="mini" type="primary" bindtap="getUserInfo1">用户信息2</button>
<!-- 获取手机号码 getPhoneNumber -->
<button size="mini" type="primary" open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">手机号码</button>

8bbeff2223ca4e3abd8aa27b95348333.png

三、View视图组件

View组件解析

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

43be1f1afb28430cb47fd287208f4ebd.png

JavaScript
// 代码展示
<view>
<!-- 独占一行 在wxss中定义了 active -->
<view bindtap="onViewClick" hover-class="active">我是view组件</view>
<view>哈哈哈哈</view>
</view>

四、Image图片组件

Image组件解析

常见属性:

0f75326933574b8cb92ce9e8c3ae5cf3.png

src属性中可以是本地图片 也可以是网络图片


Mode属性使用也比较关键


image组件默认宽度和高度为320 和 240


image组件代码


补充一个常用API:wx.chooseMedia(使用方法查看官方文档 => API => 媒体 => 视频)

60db635c9da6499b919549afc30114f6.png

代码展示 => wxml中

JavaScript
<view>
<!-- 这里可以是本地图片 也可以是网络图片 -->
<!-- 1.图片的基本使用 -->
<!-- 使用根目录: 可以直接使用 '/'  image元素宽度和高度有默认值:320*240 -->
<!-- <image src="/assets/tabbar/cart.png" />
<image src="https://profile.csdnimg.cn/9/D/0/1_coderhing" /> -->
<!-- 2.图片重要的属性:mode -->
<!-- 不希望图片压缩  mode="top"=> 只显示顶部 bottom 显示底部 等...-->
<!-- aspectFill 等比例缩放填充  aspectFit 不断缩小,直到全部展示出来 (在开发中,用的比较少)  -->
<!-- <image src="/assets/tabbar/home.png" mode="aspectFit" /> -->
<!-- 在开发中 使用的最多的还是 widthFix 宽度还是那么快 会拉伸高度 动态适配高度 还有 heightFix 跟它相反 -->
<!-- <image src="/assets/tabbar/home.png" mode="widthFix" /> -->
<!-- 3.选择本地图片 将本地图片使用image展示出来 -->
<!-- 需求: 想要点击按钮 获取手机文件相片 展示出来 -->
<button bindtap="onChooseImg">选择图片</button>
<image src="{{ chooseImageUrl }}" mode="widthFix"/>
</view>

代码展示 => js中(实现点击获取图片功能)

JavaScript
// image组件 3 . 案例:想要点击按钮 获取手机文件相片 展示出来
  onChooseImg(){
    // console.log("123"); // 接下来需要调用api
    // wx.chooseImage({ /// 这个api比较过时 所以这里不使用
    //   count: 0,
    // })
    wx.chooseMedia({
      // camera: camera, // 相机
      mediaType:"image" // 可以在官方文档中 API => 媒体 => 视频中查看
      // 他返回promise 可以用promise调用
    }).then(res=>{
      console.log(res); // 给我们返回的是一个数组
      const imagePath = res.tempFiles[0].tempFilePath
      this.setData({ chooseImageUrl:imagePath })
    })
  },

五、ScrollView滚动组件

scroll-view组件解析

df1379b2ca244f718bcd5abc6f1a0f0b.png

注:

  • 实现滚动效果必须添加scroll-x或-y属性
  • 垂直方向滚动必须要给scroll-view设置一个高度

scroll-view组件代码

4cdf455d8c144660a24940015321a027.png

代码展示


index.wxml中

JavaScript
<view>
<!-- 做对应的滚动 上下 左右滚动 -->
<!-- 1.上下滚动(y轴) 总结:两个条件 1. 内容超出scrollview高度 2.在哪个方向滚动要设置 属性 -->
<!-- 内容会将高度撑起来 此时是页面在滚动 但是我想要局部滚动 那么它就必须有固定的高度
    此时 设置高度之后 还是不可以滚动 可以添加属性 告诉它你想往哪里滚动(scroll-y)
 -->
<!-- <scroll-view class="container scrollY" scroll-y>
  <block wx:for="{{viewColors}}" wx:key="*this">
    <view class="item" style="background-color: {{item}};">{{item}}</view>
  </block>
</scroll-view> -->
<!-- 2.左右滚动(x轴) -->
<!-- 如果想要flex布局生效,那么就要使用 enable-flex -->
<scroll-view class="container scrollX" scroll-x enable-flex>
  <block wx:for="{{viewColors}}" wx:key="*this">
    <view class="item" style="background-color: {{item}};">{{item}}</view>
  </block>
</scroll-view>
<!-- 重点强调:1.不管往什么方向滚动都得有一个固定宽度或高度 并且内容得超出才能滚动 2.必须要加 scroll-y这种属性 才能有滚动效果 -->
</view>

index.wxss中

注: container 在最外层的index.wxss中有设置,把最外层的index.wxss中的 container  删除即可

CSS
/* scroll-view */
.container {
  background-color: pink;
  height: 150px;
}
.scrollX {
  display: flex;
}
.item {
  width: 100px;
  height: 100px;
  color: white;
  flex-shrink: 0;
}

六、组件的共同属性

组件共同的属性

a520a6c7ce1644c590e47a83c4a7d40c.png

相关文章
|
2月前
|
小程序 前端开发 JavaScript
在线课堂+工具组件小程序uniapp移动端源码
在线课堂+工具组件小程序uniapp移动端源码
43 0
在线课堂+工具组件小程序uniapp移动端源码
|
3月前
|
小程序 数据可视化 JavaScript
微信小程序:轻松实现时间轴组件
本文介绍了如何在微信小程序中实现一个可视化时间轴组件。该组件适用于展示用户资金流动、投资结算等时间节点,帮助用户直观了解资金去向。时间轴支持自定义节点形状、显示序号、倒序排列等功能,并通过插槽灵活定义动态内容。文中详细介绍了组件的设计与使用方法,以及如何结合动态 slot 实现自定义操作。该组件为展示用户资金信息提供了美观、易用的解决方案。
85 1
微信小程序:轻松实现时间轴组件
|
3月前
|
小程序
微信小程序动态tabBar实现:基于自定义组件,灵活支持不同用户角色与超过5个tab自由组合(更新版)
微信小程序动态tabBar实现:基于自定义组件,灵活支持不同用户角色与超过5个tab自由组合(更新版)
695 1
|
3月前
|
小程序 搜索推荐 API
微信小程序:自定义关注公众号组件样式
尽管关注公众号组件的样式固定且不可修改,但产品经理的需求却需要个性化的定制。在这种情况下,我们需要寻找解决方案,以满足这些特殊需求,尽管这可能有点棘手。
89 0
微信小程序:自定义关注公众号组件样式
|
3月前
|
小程序 前端开发 JavaScript
微信小程序图表制作利器:ECharts组件的使用与技巧
微信小程序图表制作利器:ECharts组件的使用与技巧
95 1
|
3月前
|
缓存 小程序 索引
uni-app开发微信小程序时vant组件van-tabs的使用陷阱及解决方案
uni-app开发微信小程序时vant组件van-tabs的使用陷阱及解决方案
268 1
|
3月前
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
783 7
|
3月前
|
小程序 JavaScript 前端开发
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
797 1
|
3月前
|
小程序 前端开发 测试技术
微信小程序的开发完整流程是什么?
微信小程序的开发完整流程是什么?
187 7
ly~
|
4月前
|
存储 供应链 小程序
除了微信小程序,PHP 还可以用于开发哪些类型的小程序?
除了微信小程序,PHP 还可用于开发多种类型的小程序,包括支付宝小程序、百度智能小程序、抖音小程序、企业内部小程序及行业特定小程序。在电商、生活服务、资讯、工具、娱乐、营销等领域,PHP 能有效管理商品信息、订单处理、支付接口、内容抓取、复杂计算、游戏数据、活动规则等多种业务。同时,在企业内部,PHP 可提升工作效率,实现审批流程、文件共享、生产计划等功能;在医疗和教育等行业,PHP 能管理患者信息、在线问诊、课程资源、成绩查询等重要数据。
ly~
93 6