Vue如何实现点击箭头上下移动效果

穷则独善其身,达则兼善天下。你既然认准一条道路,又何必去打听要走多久。

<body>
 <div id="app">
  <ul>
   <li v-for="(item,i) in list">{{item.name}}
     //i<list.length-1 需要的是0,1,2,3 需要四个向上的箭头 长度为5 减1之后长度为4 小于4就是0,1,2,3 
    <button v-show="i<list.length-1" @click="down(i)">↓</button>
    <button v-show="i>0" @click="up(i)">↑</button>
   </li>
  </ul>
 </div>
 <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
 
  Vue.config.productionTip = false//不去提示
  new Vue({
   el: "#app",
   data() {
    return {
     list:[
      {id:111,name:"aaa"},
      {id:222,name:"bbb"},
      {id:333,name:"ccc"},
      {id:444,name:"ddd"}
     ]
    }
   },
  
   methods:{
    down(i){
     let temp = this.list[i]
     this.$set(this.list,i,this.list[i+1])
     this.$set(this.list,i+1,temp)
    },
    up(i){
     let temp = this.list[i]
     this.$set(this.list,i,this.list[i-1])
     this.$set(this.list,i-1,temp)
    }
   }
  })
 </script>
</body>

$set(检测数组的变动)

附录:vue点击实现箭头的向上与向下

html代码

<span class="iconfont icon-jiantouarrow486" v-if="show" @click="ptOpenDowOrUp()"></span>
 <span class="iconfont icon-jiantouarrow492" v-else></span>

vue .js部分

 var vm = new Vue({
    el:'#app',
    data:{
      
      show:true,
      
    },
    methods:{
      ptOpenDowOrUp:function () {
       vm.show = !vm.show

      },
      
    }
  })

总结

到此这篇关于Vue实现点击箭头上下移动效果的文章就介绍到这了,更多相关vue 点击箭头上下移动内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

您可能有感兴趣的文章
Vue路由参数的传递与获取方式详细介绍

vue学习记录之动态组件浅析

如何解决ElementUI组件中el-upload上传图片不显示问题

解读element el-upload上传的附件名称不显示 file-list赋值

一篇关于el-table-column的formatter的如何使用及说明