我正在使用 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
。固定处理程序应该是: