微信小程序开发之常用组件解释

1 基础内容组件

1.1text组件

text的功能主要是用于内联文本,与网页中的span有点类似。

主要属性有

例子:页面上添加一个可以选中的文本

在wxml文件中添加:

xml 复制代码
<view>
<text user-select>17544456565</text>
</view>

添加user-select属性之前,文本是不可选中的,添加之后长按文本可以选中。

1.2 rich-text组件

rich-text组件比text组件有更多的功能和属性

主要的属性有

例子:在页面中添加一个蓝色字体的文本

在wxml文件中添加一下代码

xml 复制代码
<view>
<text user-select>17544456565</text>
<rich-text user-select nodes="<h1 style='color:blue;'>标题</h1>"></rich-text>
</view>

效果:

1.3 icon组件

icon组件是一个图标组件

主要的属性有:

例子:在页面中添加一个成功的图标,并修改类型、和颜色

效果: ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/7d34489fa5bb42ef828d36e59c7b2077.png)

1.4 progress组件

进度调;默认的属性长度单位为px

主要的属性有:

例子:在页面中渲染一个进度调

代码:

xml 复制代码
<view class="icon-box">
<progress class="progress-demo" percent="50" color="red" stroke-width="20" ></progress>
</view>

效果:

2 表单组件

2.1 button

按钮

基本属性:

例子:在页面中渲染一个红色镂空按钮

代码:

xml 复制代码
<view class="icon-box">
<button class="button-demo" type="warn" plain="true"> 按钮</button>
</view>

效果:

2.1 checkbox

多选项目

主要属性:

例子:在页面中渲染一个多选框

代码:

xml 复制代码
<view class="icon-box">
<checkbox color="blue" checked="true"></checkbox>
<text>选中</text>
</view>

效果:

2.2 label标签

label主要改变表单组件的可用性

主要属性:

例子:checkbox组件在label内

代码:

WXML:

xml 复制代码
<view class="page-section page-section-gap">
      <view class="page-section-title">表单组件在label内</view>
      <checkbox-group class="group" bindchange="checkboxChange">
        <view class="label-1" wx:for="{{checkboxItems}}">
          <label>
            <checkbox value="{{item.name}}" checked="{{item.checked}}"></checkbox>
            <text class="label-1-text">{{item.value}}</text>
          </label>
        </view>
      </checkbox-group>
    </view>

页面.JS

xml 复制代码
 data: {
    checkboxItems: [
      {name: 'USA', value: '美国'},
      {name: 'CHN', value: '中国', checked: 'true'}
    ],
    hidden: false
  },

效果:

2.3 form表单

表单。将组件内的用户输入的switch input checkbox slider radio picker 提交。

当点击 form 表单中 form-type 为 submit 的 button 组件时,会将表单组件中的 value 值进行提交,需要在表单组件中加上 name 来作为 key。

属性说明:

例子:用form表单组件渲染一个页面,该页面的内容可提交

代码:

WXML:

xml 复制代码
<view class="container">
  <view class="page-body">
    <form catchsubmit="formSubmit" catchreset="formReset">
      <view class="page-section page-section-gap">
        <view class="page-section-title">switch</view>
        <switch name="switch"/>
      </view>

      <view class="page-section page-section-gap">
        <view class="page-section-title">radio</view>
        <radio-group name="radio">
          <label><radio value="radio1"/>选项一</label>
          <label><radio value="radio2"/>选项二</label>
        </radio-group>
      </view>

      <view class="page-section page-section-gap">
        <view class="page-section-title">checkbox</view>
        <checkbox-group name="checkbox">
          <label><checkbox value="checkbox1"/>选项一</label>
          <label><checkbox value="checkbox2"/>选项二</label>
        </checkbox-group>
      </view>

      <view class="page-section page-section-gap">
        <view class="page-section-title">slider</view>
        <slider value="50" name="slider" show-value ></slider>
      </view>

      <view class="page-section">
        <view class="page-section-title">input</view>
        <view class="weui-cells weui-cells_after-title">
          <view class="weui-cell weui-cell_input">
            <view class="weui-cell__bd" style="margin: 30rpx 0" >
              <input class="weui-input" name="input" placeholder="这是一个输入框" />
            </view>
          </view>
        </view>
      </view>

      <view class="btn-area">
        <button style="margin: 30rpx 0" type="primary" formType="submit">Submit</button>
        <button style="margin: 30rpx 0" formType="reset">Reset</button>
      </view>
    </form>
  </view>
</view>

js:

xml 复制代码
Page({
  onShareAppMessage() {
    return {
      title: 'form',
      path: 'page/component/pages/form/form'
    }
  },

  data: {
    pickerHidden: true,
    chosen: ''
  },

  pickerConfirm(e) {
    this.setData({
      pickerHidden: true
    })
    this.setData({
      chosen: e.detail.value
    })
  },

  pickerCancel() {
    this.setData({
      pickerHidden: true
    })
  },

  pickerShow() {
    this.setData({
      pickerHidden: false
    })
  },

  formSubmit(e) {
    console.log('form发生了submit事件,携带数据为:', e.detail.value)
  },

  formReset(e) {
    console.log('form发生了reset事件,携带数据为:', e.detail.value)
    this.setData({
      chosen: ''
    })
  }
})

效果:

相关推荐
尚梦4 小时前
uni-app 封装刘海状态栏(适用小程序, h5, 头条小程序)
前端·小程序·uni-app
小飞哥liac7 小时前
微信小程序的组件
微信小程序
stormjun8 小时前
Java基于微信小程序的私家车位共享系统(附源码,文档)
java·微信小程序·共享停车位·私家车共享停车位小程序·停车位共享
paopaokaka_luck8 小时前
基于Spring Boot+Vue的助农销售平台(协同过滤算法、限流算法、支付宝沙盒支付、实时聊天、图形化分析)
java·spring boot·小程序·毕业设计·mybatis·1024程序员节
Bessie23410 小时前
微信小程序eval无法使用的替代方案
微信小程序·小程序·uni-app
shenweihong11 小时前
javascript实现md5算法(支持微信小程序),可分多次计算
javascript·算法·微信小程序
蜕变菜鸟11 小时前
小程序跳转另一个小程序
小程序
14 小时前
躺平成长-代码开发,利用kimi开发小程序(09)
小程序
17 小时前
微信小程序运营日记(第四天)
微信小程序·小程序
guanpinkeji17 小时前
旧衣回收小程序:提高回收效率,扩大服务范围
大数据·小程序·团队开发·软件开发·小程序开发·旧衣回收·旧衣回收小程序