微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

发布方法不会将结果添加到表中

如何解决发布方法不会将结果添加到表中

每当我尝试将用户推送到表中时,它什么都不做。有人可以告诉我我在做什么错吗?

.wrapper.d-flex.flex-column
    br
    input#fname(type='text',name='text' placeholder="name" v-model="name")
    br
    br
    input#lname(type='email',name='email' placeholder="email" v-model="email")
    br
    input#lname(type='phone',name='phone' placeholder="phone" v-model="phone")
    br
    input(type='submit',value='Submit' @click="addUser()")
data() {
   return  {
     users: [],name: '',email: '',phone: ''
   }
adduser() {
      axios.post('https://jsonplaceholder.typicode.com/users/',{
        name: this.name,email: this.email,phone: this.phone
      }).then((response) => {
        this.users.push(response.data);
      }).catch((error) => {
        console.log(error);
      })
    },

解决方法

then函数this中,关键字指的是不同的对象。因此,您需要在发布方法之前存储this值。您可以尝试使用此功能:

adduser() {
  var that = this;
  axios.post('https://jsonplaceholder.typicode.com/users/',{
    name: this.name,email: this.email,phone: this.phone
  }).then((response) => {
    that.users.push(response.data);
  }).catch((error) => {
    console.log(error);
  })
},

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。