看一个vue的教程,跟着教程做的,碰到一个bug?

使用post请求后,会把响应的的数据刷新成请求时所传送的数据,得不到我想要的数据。不知道是什么原因造成的?下面是代码!
图片描述
图片描述
我响应的数据是这样的:
图片描述
但是我触发getPrice函数后后,数据就变成了我传的参数了
图片描述

阅读 3.2k
5 个回答

返回的 数据到底是谁。。你截个图 network

返回的数据呢?

this.price = res.data.amount 这个 this 指向是有问题的,
在getPrice这个方法的第一行代码 写 var _this = this;
然后改 _this.price = res.data.amount

没看见返回的数据。

    this.$http.post('/api/getPrice',reqParams)
    .then((res)=>{
        this.price = res.data.amount
    })

这里的this指向有问题
你应该在

getPrice:function(){
    var _this = this
}
然后
   this.$http.post('/api/getPrice',reqParams)
    .then((res)=>{
        _this.price = res.data.amount
    })
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题