亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Vue v-for判斷是否為第4列,然后加個橫線或者第4行才顯示這一個<li>

Vue v-for判斷是否為第4列,然后加個橫線或者第4行才顯示這一個<li>

瀟瀟雨雨 2018-11-15 18:15:00
<ul id="right-notice">    <li v-for="site in sites">        <span class='time'>{{site.ntime}}</span>        <a title='{{site.qtitle}}'>{{site.ntitle}}</a>    </li>    //  思路一:<li 如果是第4行,在這里加一個什么顯示屬性?></li>    // 思路二,如果是第4行,在這里插入一個`<hr>`是否可行</ul>初學vue,翻了好久,沒有解決問題,特來求助。望前輩們指點
查看完整描述

1 回答

?
阿晨1998

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>

  1. 其中,用(site, index) in sites代替site in sites,index為獲取到的元素順序。

  2. 這里用到了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>


查看完整回答
反對 回復 2018-12-23
  • 1 回答
  • 0 關注
  • 431 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號