我正在使用 BootstrapVue
。
我想做的事:我有一個 b-form-input
,我在其中寫了一個數字。點擊我的 b-button
後,我想將其新增到我的 inputs
中。這很好用,但現在我想先檢查我的號碼是否仍在我的 inputs
中。
問題:嘗試在我的inputs
新增某些內容後,我總是收到以下錯誤:[Vue warn]:v-on 處理程序錯誤:「TypeError:this.inputs[i] 未定義」 「
我已經聲明我的資料中的所有內容都是正確的,並且沒有 for-loop
它運作良好。這裡有什麼錯誤?我無法弄清楚..
當我嘗試這樣做時:this.inputs[0].number
我得到了正確的資料..
感謝您嘗試幫助我!
我的模板中的程式碼:
<b-form-input v-model="number"></b-form-input> <b-button @click="addSomething(number)"></b-button>
我的腳本中的程式碼:
addSomething(number) { if(this.inputs != []) { for(let i = 0; i <= this.inputs.length; i++) { if(number === this.inputs[i].number) { console.log("Still existing!"); } else if(number !== this.inputs[i].number) { this.inputs.push({ INPUT_NUMBER: number, }) } } } },
使用條件
i <= this.inputs.length
您正在超出陣列的範圍。在 JavaScript 中,對陣列進行過度索引會傳回undefined
。固定處理程序應該是: