1. 程式人生 > 其它 >Vue條件渲染&列表渲染

Vue條件渲染&列表渲染

條件渲染:

  1. v-if:適用於切換頻率較低的場景;不展示的DOM元素直接被移除;可以和v-else-if v-else一起使用,但是結構不能被打斷。
  2. v-show:適用於切換頻率較高的場景;不展示的DOM元素未被移除,僅僅是使用樣式隱藏掉。

列表渲染:

<ul>
    <li v-for='(value,index) in data' :key='index'></li>
</ul>

<ul>
    <li v-for='(value,index) in data' :key='value.id'></li>
</ul>

使用index作為key可能引發的問題?

1. 若對資料進行逆序新增、逆序刪除等破壞操作會產生沒有必要的真是DOM更新  => 介面效果沒問題,但效率低。
2. 如果結構中還包含輸入類的DOM,會產生錯誤的DOM更新 => 介面有問題。

開發中如何選擇key?

1. 最好使用每條資料的唯一標識作為key,如主鍵id.
2. 如果不對資料進行逆序新增或刪除等破壞順序操作,僅用於渲染列表展示,可以使用index作為key.