zoukankan      html  css  js  c++  java
  • ul根据后台添加li,并在点击li时,颜色随之变化

    在我们大多数时候都是通过<ul><li>...</li></ul>来实现同级的加载,但是也用很多时候li里的内容是不固定的。需要根据后台返回数据来生成。

    下面来说一下在vue中这种形式的做法;

    首先在HTML中的代码如下

    <ul>
            <li v-for="item in classify" :key="item.id" 
            :class="activeClass == item.id ? 'active':''"
            @click.stop.prevent="changeCify(item)">
                {{ item.name }}
            </li> 
    </ul>                        
    
    classify为后台返回的集合。也可以自己在data里写。咱们为了演示效果所以在data中的return里写出来。如下所示:
    return {
          activeClass: 1,
          classify: [{ id:1, name:'共道' },{ id:2, name:'个人代账'},
          { id:3, name:'电商园区' },{ id:4, name:'钉钉' },
          { id:5, name:'app' },{ id:6, name:'官网' },
          { id:7, name:'阿里云' }, { id:8, name:'阿里云市场' }], 
    }

    还有我们的点击时执行的函数,写在methods中;如下

    changeCify(item){
       
        this.activeClass = item.id;
    
        console.log(item)
    }

    这样就全部完成了,包括了v-for 加载li,和点击方法 changeCify(item) 。和颜色的自动切换 :class="activeClass == item.id ? 'active':''" 。就是这些。希望对你有帮助

  • 相关阅读:
    LeetCode: 389 Find the Difference(easy)
    LeetCode: 669 Trim a Binary Search Tree(easy)
    C++: 内联函数
    C++: STL迭代器及迭代器失效问题
    LeetCode: 371 Sum of Two Integers(easy)
    etcdctl命令
    Etcd介绍
    docker基础镜像打包
    docker常见问题总结
    更改容器内时区
  • 原文地址:https://www.cnblogs.com/wzfwaf/p/11755235.html
Copyright © 2011-2022 走看看