这篇文章主要介绍了微信小程序如何修改data使页面数据实时更新,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
需求:通过点击button修改dataList中checkResult的值并修改按钮状态。
a.wxml:
<view wx:for="{{dataList}}" wx:key='index' class='list-body'> <view> <view>编码:{{item.equipCode}}</view> <view>设备:{{item.equipName}}</view> <view>测项:{{item.checkItemName}}</view> </view> <!-- wx:if设置默认选中状态 --> <view class='list-button' wx:if='{{item.checkResult=="正常"}}'> <button bindtap='change' data-index='{{index}}' data-status='' class='add' style='color:#fff'>正常</button> <button bindtap='change' data-index='{{index}}' data-status='异常'>异常</button> </view> <view class='list-button' wx:else> <button bindtap='change' data-index='{{index}}' data-status='正常'>正常</button> <button bindtap='change' data-index='{{index}}' data-status='异常' class='add' style='color:#fff'>异常</button> </view> </view>
a.js
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进行修改和取值。
感谢你能够认真阅读完这篇文章,希望小编分享的“微信小程序如何修改data使页面数据实时更新”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。