开发者问题收集

Vue.js 更新方法内的变量不起作用

2021-12-31
46

我正在开发一个 Vue.js 应用程序,这是我的数据:

data() {
  return {
    formAddNew: {
        cover: "",
        title: "",
        date: "",
        content: "",
        author: "",
        attachement: "",
    },
  }
}

我想在 axios 请求后更新封面,它看起来像这样:

          axios.post('/upload.php',
                formData,
                {
                    headers: {'Content-Type': 'multipart/form-data'}
                }
            ).then(function(data){
                this.formAddNew.cover = data.data;
            })
            .catch(function(){
                console.log('Error!')
            }); 

但它不起作用,我不知道为什么,请帮我修复它。

1个回答

尝试使用 (data)=> 而不是 function(data) 来访问回调上下文中的 this :

).then((data)=>{
               this.formAddNew.cover = data.data;
            })
Boussadjra Brahim
2021-12-31