本篇文章给大家带来的内容是关于微信小程序修改data使页面数据实时更新的代码示例,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
需求:通过点击button修改dataList中checkResult的值并修改按钮状态。

a.wxml:
<view>
<view>
<view>编码:{{item.equipCode}}</view>
<view>设备:{{item.equipName}}</view>
<view>测项:{{item.checkItemName}}</view>
</view>
<!-- wx:if设置默认选中状态 -->
<view>
<button>正常</button>
<button>异常</button>
</view>
<view>
<button>正常</button>
<button>异常</button>
</view></view>
a.js
小程序管理平台系统源码是一套面向小程序服务商的一站式管理程序,基于 uniapp + ThinkPHP(PHP)开发,支持微信小程序、微信公众号与 H5 端。系统主打"全开源、独立部署、无限开 SAAS 账号",适合需要集中管理多个小程序、为客户代开通与授权的小程序服务商使用。
Page({
data:{
dataList:[
{'equipCode':1001,'equipName':'打印机','checkItemName':'记录',checkResult:'正常'},
{'equipCode':1002,'equipName':'打印机','checkItemName':'记录',checkResult:'异常'},
{'equipCode':1003,'equipName':'打印机','checkItemName':'记录',checkResult:'正常'},
{'equipCode':1004,'equipName':'打印机','checkItemName':'记录',checkResult:'异常'},
{'equipCode':1005,'equipName':'打印机','checkItemName':'记录',checkResult:'正常'}
]
},
change: function(e) {
var changeData = 'dataList['+e.target.dataset.index+'].checkResult';
if (e.target.dataset.status == '正常') {
this.setData({
[changeData]: '正常'//修改状态,前端页面数据也会改变
})
} else {
this.setData({
[changeData]: '异常'
})
}
},
})
上面示例通过this.setData修改data中的值,实现数据与前端页面保持一直,相当于vue中的双向数据绑定。
如果对数据一致性没有要求的话还可以使用this.data.Object进行修改和取值。










