"TypeError .. is undefined" 在 for 循环中
"TypeError .. is undefined" in for loop
我正在与 BootstrapVue
合作。
我正在尝试做的事情: 我有一个 b-form-input
,我在里面写了一个 number。单击我的 b-button
后,我想将其添加到我的 inputs
。这很好用,但现在我想先检查我的 number 是否还在我的 inputs
.
中
问题: 尝试向我的 inputs
添加内容后,我总是收到以下错误:[Vue warn]: Error on v-on handler: "TypeError: this.inputs[i] is undefined"
我已经声明我的数据中的所有内容都是正确的,没有 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 过度索引数组 returns undefined
.
固定处理程序应该是:
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,
})
}
}
}
},
我正在与 BootstrapVue
合作。
我正在尝试做的事情: 我有一个 b-form-input
,我在里面写了一个 number。单击我的 b-button
后,我想将其添加到我的 inputs
。这很好用,但现在我想先检查我的 number 是否还在我的 inputs
.
问题: 尝试向我的 inputs
添加内容后,我总是收到以下错误:[Vue warn]: Error on v-on handler: "TypeError: this.inputs[i] is undefined"
我已经声明我的数据中的所有内容都是正确的,没有 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 过度索引数组 returns undefined
.
固定处理程序应该是:
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,
})
}
}
}
},