🐵指尖猴全新升级
第13课:数据绑定
🔗

数据绑定

数据一变,页面跟着变

📖知识引入

🏷️{{}}是数据窗口
WXML里写{{motto}},页面就显示data里的motto值。数据变了,显示自动跟着变——这叫数据绑定。
📤setData唯一通道
改数据必须用this.setData({ motto: '新值' })。直接改this.data.motto页面纹丝不动!记住:setData是唯一大门。
📋wx:for列表渲染
数组配上wx:for,每项自动生成一个标签,像盖章机批量产出——商品列表、账单列表全靠它。
🚦wx:if条件渲染
wx:if="{{isVip}}"条件成立才显示。配合wx:else,能让页面元素按需出现或消失。
🔄单向数据流
数据→页面自动同步;页面→数据要靠事件(如输入框bindinput)把值写回。理解这条河的流向,小程序就懂了一半。
💡
更新页面只有一条路:this.setData(),别无他法!

🔍数据流动全景图

<!-- WXML -->
<view class="count">{{count}}</view>
<button bindtap="add">+1</button>

<!-- 循环渲染列表 -->
<view wx:for="{{list}}" wx:key="id">
  <text>{{item.name}}</text>
</view>

// JS
Page({
  data: { count: 0 },
  add() {
    this.setData({ count: this.data.count + 1 })
  }
})

数据流动的方向:

data: {count: 0}

│

▼ {{count}}自动显示

页面显示 0

▲

│ setData({count: 1})

点+1→add()执行

│

▼ 自动刷新

页面显示 1

❌ 错误示范:
this.data.count = 100
(数据变了,页面纹丝不动)

✅ 正确姿势: this.setData({ count: 100 }) (页面立刻更新)

记住:setData是数据 进入页面的唯一大门!

🎯小测验

第1题:WXML中显示data里的数据,用什么语法?

第2题:想让页面上的数字更新,必须调用?

第3题:要显示一个商品列表,WXML用哪个指令?

📝本课知识点

  • ✓{{}}把数据显示到页面
  • ✓setData是更新数据的唯一通道
  • ✓wx:for批量渲染列表
  • ✓wx:if按条件显示隐藏
  • ✓数据流:数据→页面自动,页面→数据靠事件
第13课完成!继续探索下一课吧 🚀