小程序32-简易双向数据绑定

在WXML中,普通属性的绑定是单向的,例如:<input value="{{value}}" />

如果希望用户输入数据的同时改变data中的数据,可以借助简易双向绑定机制。在对应属性之前添加model:前缀即可:

例如<input model:value="{{value}}" />

注意事项:简易双向绑定的属性值如下限制:

1.只能是一个单一字段的绑定,例如:错误用法:<input model:value="值为 {{value}}" />

2.尚不能写 data 路径,也就是不支持数组和对象,例如:错误用法:<input model:value="{{ a.b }}" />

html 复制代码
<!--pages/cart/cart.wxml-->

<!-- 单向绑定:数据能够影响页面,但是页面更新不会影响数据 -->
<input type="text" value="{{ value }}"/>

<!-- 双向绑定:数据能够影响页面,页面更新也能够影响数据 -->
<!-- 如果想实现简易双向绑定,需要再对应的属性之前添加 model: -->
<input type="text" model:value="{{ value }}"/>

<!-- 如果需要犹取复选框的选中效果,需要给checked 添加 model:-->
<checkbox model:checked="{{ ischecked }}" />

<!-- 注意事项1:属性值只能是一个单一字段的绑定 -->
<!-- <input type="text" model:value="值为 {{ value }}" />  -->

<!-- 注意事项2:属性值不能写数据路径,也就是不支持对象和数组 -->
<!-- <input type="text" mode1;value="{{ obj.value }}" /> -->
javascript 复制代码
// pages/cart/cart.js
Page({
  data: {
    value: 123,
    isChecked: false,
    obj: {
      value: 123
    }
  }
})
相关推荐
IMPYLH3 分钟前
HTML 的 <th> 元素
前端·html
风骏时光牛马3 分钟前
AI浪潮下程序员的职场破局与能力成长思考
前端
IMPYLH10 分钟前
HTML 的 <thead> 元素
前端·html
FungLeo9 小时前
成为全栈·React 管理后台篇·总复盘:从“接口能调通”到“后台值得使用”
前端·react.js·前端框架·项目复盘·成为全栈
Csvn10 小时前
并发模式:让渲染学会排队、插队和让路
前端
可乐鸡翅yeah_10 小时前
新手梳理:M3U8 线上问题,哪些是前端锅,哪些是后端锅
前端·ios·音视频·实时音视频·m3u8·音视频在线播放
Flynt10 小时前
Linear 用 1000 个 PR 换掉 styled-components,我写了 200 个按钮,把这笔账复现了一遍
前端·css·preact
JavaGuide11 小时前
NVIDIA 又开源了!这次给 AI Agent 加上权限管控
前端·后端
excel11 小时前
prisma 如何处理数据库竞态
前端·数据库·后端
莪_幻尘13 小时前
Skill 体检:30 个 Skill 全凭感觉?体检器先自曝了 8 个“假 0 分
前端·人工智能·llm