Skip to content

微信小程序

样式

尺寸单位

rpx 是小程序新增的自适应单位,小程序规定,任何型号的手机的屏幕宽度都为 750rpx

background-image

小程序中的 background-image 不支持本地路径!需要使用网络图片,或者 base64,或者 <image> 组件。

事件绑定

  1. bind:事件名
  2. bind事件名

数据绑定

声明和绑定数据

html
<button type="primary" bind:tap="handleTap">{{ num }}</button>
js
Page({
  data: {
    num: 0, // 定义属性
  },
  handleTap() {
    // 更新属性值
    this.setData({ num: this.data.num + 1 })
  },
})

双向绑定

普通属性的绑定是单项的,若需要双向绑定,需要在属性前面加上 model:

html
<input model:value="{{ value }}" />

<checkbox model:checked="{{ checked }}" />

注意

  • 属性值只能是一个单一字段的绑定;
  • 属性值不能写“属性路径”,也就是说不支持对象和数组;

列表渲染

  • wx:key 是必须的,且需要保持唯一。
  • wx:key 赋值时,不需要使用 双括号进行包裹。
  • wx:key 有两种添加形式:
    • 字符串:直接为 item 中的某个属性;
    • 保留关键字 *this:代表的是 item 本身。

数组

  • 每一项的变量名默认为 item
  • 每一项下标的变量名默认是 index
html
<view wx:for="numList" wx:key="index">{{ item }} - {{ index }}</view>

对象

  • 对象属性的值为 item
  • 对象属性为 index
html
<view wx:for="obj" wx:key="index">{{ item }} - {{ index }}</view>

修改默认变量名和下标

  • 修改默认变量名:wx:for="numList" wx:for-item="num"
  • 修改默认下标:wx:for="numList" wx:for-index="index"

条件渲染

条件渲染有两种方式:

  • wx:ifwx:elifwx:else:通过 移除/新增节点 来实现;
  • hide:通过 display 样式属性 来实现。

参考资料

基于 MIT 许可发布