微信小程序操作數組對象


navinfo: [{ 'NavName': '定位', 'NavIcon': 'location', 'NavIconSize': '22px', 'IconColor': '#000', 'IconCheckedColor': '#fff', 'IsChecked': '0' },
{ 'NavName': '電池', 'NavIcon': 'shopping-cart', 'NavIconSize': '22px', 'IconColor': '#000', 'IconCheckedColor': '#fff', 'IsChecked': '0' },
{ 'NavName': '救援', 'NavIcon': 'phone-circle', 'NavIconSize': '22px', 'IconColor': '#000', 'IconCheckedColor': '#fff', 'IsChecked': '1' },
{ 'NavName': '我的', 'NavIcon': 'manager', 'NavIconSize': '22px', 'IconColor': '#000', 'IconCheckedColor': '#fff', 'IsChecked': '0' }]
如上代碼,需要修改navinfo數組里面的第一個對象{ 'NavName': '定位', 'NavIcon': 'location', 'NavIconSize': '22px', 'IconColor': '#000', 'IconCheckedColor': '#fff', 'IsChecked': '0' },里的IsChecked為1,其他的子項的IsChecked屬性修改為0,
代碼:
 _onChange:function(e){
      
      let that=this;
      var _index=e.currentTarget.dataset.index;
      for (let nav in that.properties.NavInfo){
        if (nav == _index){
          that.setData({
            ['NavInfo[' + nav + '].IsChecked']:1
          });
        }else{
          that.setData({
            ['NavInfo[' + nav + '].IsChecked']: 0
          });
        }
      }
    }

以上函數中的e,由前端的data-index中獲取,頁面代碼如下:

<view wx:for="{{NavInfo}}" wx:for-item="Item" style="">wx:key="*this" data-index="{{index}}" bindtap="_onChange" class="navItem">


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM