VueJS实践:怎么给v-for之后的每个节点都添加不同的样式

1>

<ul> <li v-for="n in 6" :class="'item'+n">{{n}}</li> </ul>

2>
每个节点应该定义了type

<div v-for="item in list" class={'classA': item.type === 'type1', 'classB': item.type === 'type2'}>node</div>

3>
比如我们有一个列表,我们希望能显示我们当前选中的那一个,如何实现呢?
基本思路是通过$index来判断是否是当前迭代对象,然后去增减class或者style来实现不同的样式

<ul>
  <!-- 方法1 class-->
  <li v-for="item in list" :class="{'active': $index === activeId}">{{item}}</li>
  
  <!-- 方法2 style-->
  <li v-for="item in list" :style="{backgroundColor: $index === activeId ? 'red' : 'white'}">{{item}}</li>
</ul>

data () {
  return {
    list: ['a', 'b', 'c'],
    activeId: 0
  }
},
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,269评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,630评论 25 709
  • 零三年初夏,SARS肆虐,人心惶惶,風声鹤唳,草木皆兵。 时值,金总、德永兄和我禀承“知青要到农村去,接受...
    老胖墩阅读 520评论 0 0
  • 前几天,公司旅游,同事们一起玩了一天,我带孩子去的,大家相处一天下来后,同事C跟我说,“好佩服你啊,你完全不像其他...
    戴戴写作之路阅读 1,111评论 3 5
  • 某天的下午,小洁练车回来,满头大汗的从包里拿出水杯,想从开水瓶里倒杯水喝,当她去提起水瓶的时候,微笑的脸不自觉的挤...
    芹思Della阅读 228评论 1 1