線上服務咨詢
Article/文章
記錄成長點滴 分享您我感悟
微信小程序修改data使頁面數(shù)據(jù)實時更新的代碼示例
本篇文章沈陽軟件開發(fā)
需求:通過點擊button修改dataList中checkResult的值并修改按鈕狀態(tài)。
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設置默認選中狀態(tài) --> <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]: '正常'//修改狀態(tài),前端頁面數(shù)據(jù)也會改變 }) } else { this.setData({ [changeData]: '異常' }) } },})
上面示例通過this.setData修改data中的值,實現(xiàn)數(shù)據(jù)與前端頁面保持一直,相當于vue中的雙向數(shù)據(jù)綁定。
如果對數(shù)據(jù)一致性沒有要求的話還可以使用this.data.Object進行修改和取值。
以上就是微信小程序修改data使頁面數(shù)據(jù)實時更新的代碼示例的詳細內(nèi)容,更多請關注沈陽網(wǎng)站建設其它相關文章!
小程序