copyWithin简单排序例子

<view class="roadTeamCon">
 
    <view class="movableBox">
      <view class="movableBox">
        <view a:for="{{roadTeamList}}" class="card-item " data-index="{{index}}">
          <view class="classBox">
            <view class="className">
              {{item.className}}
            </view>
            <view class="leaveSchoolTypeName">
              {{item.leaveSchoolTypeName}}
            </view>
            <view class="imgBox" a:if="{{index != 0}}">
              <image onTap="hanldTop" data-type="addOne" data-index="{{index}}" data-item="{{roadTeamList}}" class="image1"  src="{{imgUrl}}/tab4/moveUp.png"/>
              <image onTap="hanldTop" data-type="addAll" data-index="{{index}}" data-item="{{roadTeamList}}" class="image1"  src="{{imgUrl}}/tab4/roadTopping.png"/>
            </view>
          </view>
        </view>
      </view>
    </view>
  </view>
 hanldTop(e) {
    var target = e.target.dataset
    var index = e.target.dataset.index
    var item = e.target.dataset.item
    var temp = null

    //上移
    if (target.type == "addOne") {
    
      temp = item[index - 1];
     
      item = item.copyWithin(index - 1, index, index + 1);//target, start, end
      item[index] = temp;
      this.setData({
        roadTeamList: item
      })
    }
    //置顶
    else if (target.type == 'addAll') {
      var roadTeamList = this.data.roadTeamList
      roadTeamList.map((item, ids) => {
        if (ids == index) {
          roadTeamList.unshift(roadTeamList.splice(ids, 1)[0]);
        }
      })
      this.setData({
        roadTeamList: roadTeamList
      })
    }
  },
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值