1 回答
TA贡献2037条经验 获得超6个赞
<ul id="right-notice">
<li v-for="(site, index) in sites">
<span class='time'>{{site.ntime}}</span>
<a title='{{site.qtitle}}'>{{site.ntitle}}</a>
<hr v-if="!((index + 1) % 4)" />
</li>
</ul>
其中,用
(site, index) in sites
代替site in sites
,index
为获取到的元素顺序。这里用到了
v-if
。其中对于index值为3(第四项),7(第八项),11(第十二项)... (4的倍数项),需要显示hr
,对于这些值,(index + 1) % 4
为0,所以!((index + 1) % 4)
为true
,显示hr
。【这里index
按顺序从0开始计数,所以index + 1
为表示当前site在sites数组中是第几个,然后(index + 1) % 4
,每满4,顺序数除以4余数都为0】
Update:
添加class的方法:(假设class名叫underline
)
<ul id="right-notice">
<li v-for="(site, index) in sites" :class="{underline: !((index + 1) % 4)}">
<span class='time'>{{site.ntime}}</span>
<a title='{{site.qtitle}}'>{{site.ntitle}}</a>
</li>
</ul>
添加回答
举报