【发布时间】:2021-07-19 08:33:45
【问题描述】:
您好,很抱歉新手问题 我试图在按钮单击时将 HTML 输入推送到现有数组中,但我找不到我的错误。 任何人都可以发现错误吗? console.log(user) 保持未定义,我不知道为什么我创建的 let newUser() 没有被推送到数组中。
<template>
<div>
<form @submit.prevent="customSubmit">
<label>Name</label>
<input type="text" required name="name" id="name">
<label>E-mail:</label>
<input type="email" required name="email" id="email">
<label>Mobile Number</label>
<input type="number" required name="number" id="number">
</form>
<button type="submit" class=buttonSignup @click="customSubmit">Submit</button>
</div>
</template>
<script>
export default {
data() {
return{
user:[{
name: '',
email:'',
number:''
}]
};
},
methods: {
customSubmit(){
let newUser = {
name: document.getElementById('name').value,
email: document.getElementById('email').value,
number: document.getElementById('number').value
}
this.user.push(newUser)
console.log(this.user.value)
},
}
}
</script>
【问题讨论】:
-
你的对象中没有
this.user.value,有this.user[0].name、this.user[0].email和this.user[0].number...控制台日志this.user第一个看到你甚至推送任何东西。此外 this.user 是对象数组,因此您需要将其中一个作为目标来获取名称,通过电子邮件发送一个号码。或者,如果您以 this.user 为目标,则应该将所有对象放入其中。
标签: javascript arrays vue.js vuejs2