詳解Vue中使用v-for語句拋出錯誤的解決方案,vuev-for

來源:互聯網
上載者:User

詳解Vue中使用v-for語句拋出錯誤的解決方案,vuev-for

Vue 中使用v-for語句拋出錯誤的解決方案

今天在維護以前的項目的時候遇見了下面的報錯情況,開始我以為是因為jQuery和Vue衝突了,所以把以前的jQuery改了,但是還是出現同樣的錯誤…通過查閱資料,發現是因為迴圈的變數裡面的值重複了,導致Vue報錯。

複製代碼 代碼如下:
Uncaught (in promise) TypeError: Cannot read property ‘removeChild' of null

接下來查了一下解決方案,發現在Vue 2.0之前的版本可以通過在v-for語句後面加如下語句解決:

<div v-for="item in items" track-by="id">

不過在Vue 2.0之後的版本中track-by改為了key,所以對於Vue 2.0之後的版本可以使用:

<div v-for="item in items" v-bind:key="item.id">

其實,在查看API返回的JSON資料後,發現重複請求了介面,所以,這個問題本來就不應該出現的。所以特意在介面擷取資料的地方加上了一個過濾方法:

self.goodsList.indexOf(arr) === -1 ? self.goodsList.push(arr) : undefined

這句語句就是說如果擷取的數組元素不重複的話,才將數組元素加入到列表中。

以上就是本文的全部內容,希望對大家的學習有所協助,也希望大家多多支援幫客之家。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.