从零开始学微信小程序开发:2

第三章  快速开发UI界面

     目前提供8累24中基础组件,还会增加新的组件

3.1 认识组件

     提供了视图容器组件、基础内容组件、表单组件、操作反馈组件、导航组件、媒体组件、地图组件、画布组件等8类组件。

     组件是对HTML5元素的封装。

     组件的通用属性

          id属性:字符串类型,唯一标示

          class属性:字符串类型,设置组件的样式类。如果与动态数据绑定相结合,具有动态变换的能力。

          style属性:字符串类型,设置组件的内联样式。

          hidden属性:逻辑值,是否显示

          data-*属性:可为任何类型,设置自定义属性值。当绑定的事件触发时,作为参数发送给事件处理函数,通过传入参数对象currentTarget.dataset方式来获取自定义属性的值。

          bind*/catch*属性:为组件定义事件的。如bindtap绑定触摸按下事件

3.2 加法计算器

      view组件:一个容器组件,所谓容器组件是指可在其中放置其他组件,当然也可使用view组件显示具体文字内容。

      input组件:用户输入的组件,接收text, number, idcard, digit, time, date等类型的数据。常用的属性有:

           value属性(输入框的内容)、password属性(是否为密码框),placeholder属性(提示信息)

           disabled属性(是否禁用)、maxlength属性(输入字符的最大长度),bindchange属性(失去焦点时,将触发bindchange事件)    

      button组件:常用的属性有size,type,plain,disabled,loading等几个

      计算机器UI:

            在pages目录下新建一个名为calc的目录

            app.js添加calc页面

                   "page/calc/calc"

            calc.json设置页面参数

{
    "navigationBarBackgroundColor": "#00ff00",
    "navigationBarTitleText": "加法计算器",
    "navigationBarTextStyle": "white"
}
             calc.wxml

<view class="container">
    <input placeholder="被加数" bindinput="bindInput1"/>
    <input placeholder="加数" bindinput="bindInput2"/>
    <button type="primary" bindtap="bindAdd">计算</button>
    <input placeholder="结果" value="{{result}}" disabled/>
</view>
              calc.wxss

.container {
    justify-content: flex-start;
    padding: 30rpx 0;
}


.container input {
    background-color: #eee;
    border-radius: 3px;
    text-align: left;
    width: 720rpx;
    height: 100rpx;
    line-height: 100rpx;
    margin:20rpx
}


.container button {
    width:80%;
}
            calc.json

  data: {
     num1:"",
     num2:"",
     result:""
  },
  //
  bindAdd:function(e) {
    var r = this.data.num1 * 1 + this.data.num2*1;
    this.setData({result:r});
  },
  //
  bindInput1:function(e) {
    var n=e.detail.value;
    if (!isNaN(n)) {
      this.setData({num1:n});
    }
  },
  //
  bindInput2: function (e) {
    var n = e.detail.value;
    if (!isNaN(n)) {
      this.setData({ num2: n });
    }
  },

3.3 另一种输入数据的方式

      slider组件:滑动条组件,通过拖动这个组件的滑块,可以设置一个值

      常见属性:

  • min:组件的最小值
  • max:组件的最大值
  • step:步长值
  • value:组件的当前值
  • Show-value:是否在右侧显示当前值
  • bindchange:操作完成时触发,通过event.detail.value传递值。        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值