線上服務(wù)咨詢
Article/文章
記錄成長(zhǎng)點(diǎn)滴 分享您我感悟
您當(dāng)前位置>首頁(yè) > 知識(shí) > 軟件開(kāi)發(fā)
微信小程序修改data使頁(yè)面數(shù)據(jù)實(shí)時(shí)更新的代碼示例
本篇文章沈陽(yáng)軟件開(kāi)發(fā)
需求:通過(guò)點(diǎn)擊button修改dataList中checkResult的值并修改按鈕狀態(tài)。
a.wxml:
<view wx:for="{{dataList}}" wx:key='index' class='list-body'> <view> <view>編碼:{{item.equipCode}}</view> <view>設(shè)備:{{item.equipName}}</view> <view>測(cè)項(xiàng):{{item.checkItemName}}</view> </view> <!-- wx:if設(shè)置默認(rèn)選中狀態(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':'打印機(jī)','checkItemName':'記錄',checkResult:'正常'}, {'equipCode':1002,'equipName':'打印機(jī)','checkItemName':'記錄',checkResult:'異常'}, {'equipCode':1003,'equipName':'打印機(jī)','checkItemName':'記錄',checkResult:'正常'}, {'equipCode':1004,'equipName':'打印機(jī)','checkItemName':'記錄',checkResult:'異常'}, {'equipCode':1005,'equipName':'打印機(jī)','checkItemName':'記錄',checkResult:'正常'} ] }, change: function(e) { var changeData = 'dataList['+e.target.dataset.index+'].checkResult'; if (e.target.dataset.status == '正常') { this.setData({ [changeData]: '正常'//修改狀態(tài),前端頁(yè)面數(shù)據(jù)也會(huì)改變 }) } else { this.setData({ [changeData]: '異常' }) } },})
上面示例通過(guò)this.setData修改data中的值,實(shí)現(xiàn)數(shù)據(jù)與前端頁(yè)面保持一直,相當(dāng)于vue中的雙向數(shù)據(jù)綁定。
如果對(duì)數(shù)據(jù)一致性沒(méi)有要求的話還可以使用this.data.Object進(jìn)行修改和取值。
以上就是微信小程序修改data使頁(yè)面數(shù)據(jù)實(shí)時(shí)更新的代碼示例的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注沈陽(yáng)網(wǎng)站建設(shè)其它相關(guān)文章!
小程序