项目中有时,会有将后来返回的数据列表循环渲染出来,并且为每一个列表添加不同的样式类名,从而现显示不同的如图片,颜色等,现在有两种方法如下:
- 第一种通过 :class="
statusIcon+item.type",将每一项动态添加类名,为其动态添加不同的背景图片,
<view class="record" v-for="(item,index) in recordList" :key='index'>
<view class="recordRight">
<view class="statusIcon" :class="`statusIcon`+item.type"></view>
<view class="recordInfo">
<view class="statusAndTime">
<view class="status" v-cloak>{{item.title}}</view>
<view class="time">{{item.date}}</view>
</view>
<view class="money" :class="[item.count > 0 ? 'status1' : 'statusStyle' ]" v-cloak>{{item.count|toFixed(2)}}</view>
</view>
</view>
</view>
recordList的数据结构如图:


- 第二种:根据后台返回金额的正负,去动态为金额添加不同的颜色,如是整数为蓝色,负数为黑色
注意:此时需求为两种状态,所以直接用三元
<view class="money" :class="[item.count > 0 ? 'status1' : 'statusStyle' ]"
效果如图:
