使用Vue中 v-for循环列表控制按钮隐藏显示功能

 更新时间:2019年04月23日 15:03:30   作者:xiongdaandxiaomi  
这篇文章主要介绍了使用Vue中 v-for循环列表控制按钮隐藏显示功能,需要的朋友可以参考下

v-for可以把数据中的一个数组对应为一组元素

v-for 指令需要以 item in items 形式的特殊语法, items 是源数据数组并且 item 是数组元素迭代的别名。

- 实现效果如图

这里写图片描述

需求描述:

第一个显示蓝色按钮,代表数据最终状态;其余按钮为灰色,显示数据流转记录。

返回的数据类型

这里写图片描述

前端页面代码

<div class="leftProcessBox">
   <div class="leftProcess" v-for="(listLZPar,index) in listLZParams" v-show="listLZPar.operate_type!=''">
     <div class="process">
       <div class="processPointLine">
         <div class="processPoint">
           <i class="ico iconfont icon-circleyuanquan iconCircle " v-show="index==0"></i>
           <i class="ico iconfont icon-yuan iconCircle" v-show="index!=0"></i>
           <div class="characterInfo">{{listLZPar.operate_type | operatertypeToName}}</div>
         </div>
         <div class="processLine" v-show="!(index == listLZParams.length-1)">
         </div>
       </div>
     </div>
   </div>
 </div>

PS:vue里面如何让v-for循环出来的列表里面的列表click事件只对当前列表有效

<li @click="show">
  <span>1</span>
</li>
<li @click="show">
   <span>1</span>
</li>
<li @click="show">
   <span>1</span>
</li>

li点击只让当前的 li 下面的span 隐藏

方法一:用vue就尽量遵从数据驱动的想法,实现这个的方法很多,但是尽量不要直接去操作dom。

<div id="app">
 <ul>
  <li v-for="list in lists" @click="show($index)">
   <span v-show="$index !== i">{{ list }}</span>
  </li>
 </ul>
</div>
<script>
new Vue({
 el: '#app',
 data: {
  lists: [1, 1, 1],
  i: -1 
 },
 methods: {
  show (index) {
   this.i = index
  }
 }
})
</script>

方法2:

<ul id="app">
 <li v-for='item in items' @click="toggle(item)">
  <span v-if='item.show'>{{item.content}}</span>
 </li>
</ul>
new Vue({
 el: '#app',
 data: function() {
  return {
   items: [{
    content: '1 item',
    show: true
   }, {
    content: '2 item',
    show: true
   }, {
    content: '3 item',
    show: true
   }]
  }
 },
 methods: {
  toggle: function(item) {
      item.show = !item.show;
  }
 }
})

总结

以上所述是小编给大家介绍的使用Vue中 v-for循环列表控制按钮隐藏显示功能,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

相关文章

  • Vue使用Three.js加载glTF模型的方法详解

    Vue使用Three.js加载glTF模型的方法详解

    这篇文章主要给大家介绍了关于Vue使用Three.js加载glTF模型的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Vue具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-06-06
  • vue常用6种数据加密方式的使用

    vue常用6种数据加密方式的使用

    本文介绍了在Vue.js项目中常用的6种数据加密方式,包括Base64编码、MD5哈希、SHA-256哈希、AES加密、RSA加密和使用WebCryptoAPI,每种加密方式都有其优缺点,适用于不同的场景,感兴趣的可以了解一下
    2024-10-10
  • vue里的axios如何获取本地json数据

    vue里的axios如何获取本地json数据

    这篇文章主要介绍了vue里的axios如何获取本地json数据,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • vue实现动态路由添加功能的简单方法(无废话版本)

    vue实现动态路由添加功能的简单方法(无废话版本)

    ue动态路由(约定路由),听起来好像很玄乎的样子,但是你要是理解了实现思路,你会发现没有想象中的那么难,下面这篇文章主要给大家介绍了关于vue实现动态路由添加功能的简单方法,需要的朋友可以参考下
    2023-02-02
  • vue 实现在同一界面实现组件的动态添加和删除功能

    vue 实现在同一界面实现组件的动态添加和删除功能

    这篇文章主要介绍了vue 实现在同一界面实现组件的动态添加和删除,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • 详解Vue.js自定义tipOnce指令用法实例

    详解Vue.js自定义tipOnce指令用法实例

    这篇文章主要介绍了详解Vue.js自定义tipOnce指令用法实例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12
  • Vue 集成 PDF.js 实现 PDF 预览和添加水印的步骤

    Vue 集成 PDF.js 实现 PDF 预览和添加水印的步骤

    这篇文章主要介绍了如何在 Vue 中集成 Mozilla/PDF.js ,实现自定义的 PDF 预览器,以及给被预览的 PDF 添加水印
    2021-01-01
  • Nuxt封装@nuxtjs/axios请求后端数据方式

    Nuxt封装@nuxtjs/axios请求后端数据方式

    这篇文章主要介绍了Nuxt封装@nuxtjs/axios请求后端数据方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10
  • 解析Vue2.0双向绑定实现原理

    解析Vue2.0双向绑定实现原理

    本篇文章主要介绍了解析Vue2.0双向绑定实现原理,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • vue中ref引用操作DOM元素的实现

    vue中ref引用操作DOM元素的实现

    本文主要介绍了vue中ref引用操作DOM元素的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01

最新评论