请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

res.data.amount一直返回不了价格是怎么回事?

  代码是直接复制过来的,但是页面载入时,db.json 的字段会直接变成下面这样,就算一开始在db.json加入了价格,页面重载时还会变成下面这样,不能获取价格

db.json

"getPrice": {"amount": 123}

页面载入时变为

"getPrice": {

    "buyNum": 1,

    "buyType": 0,

    "period": 0,

    "version": "0"

  },

没有获取"getPrice": {"amount": 123},而是修改了"getPrice"的内容。

analysis.vue

onParamChange (attr, val) {

      this[attr] = val

      this.getPrice()

    },

getPrice () {

      let buyVersionsArray = _.map(this.versions, (item) => {

        return item.value

      })

      let reqParams = {

        buyNum: this.buyNum,

        buyType: this.buyType.value,

        period: this.period.value,

        version: buyVersionsArray.join(',')

      }

      this.$http.post('/api/getPrice', reqParams)

      .then((res) => {

        this.price = res.data.amount

      })

    }

mounted () {

    this.buyNum = 1

    this.buyType = this.buyTypes[0]

    this.versions = [this.versionList[0]]

    this.period = this.periodList[0]

    this.getPrice()  

  }


正在回答

2回答

fishenal 2017-05-02 13:24:17

页面重载后还会变成哪样?db.json里是假数据,页面里改动的只是浏览器里的js数据,改不了db.json里的数据

0 回复 有任何疑惑可以回复我~
  • 提问者 野火燎原 #1
    重载后db.json里的假数据就就变成了渲染完毕后的预设数据,更改选项后,就变成了更改选项后的数据,
    回复 有任何疑惑可以回复我~ 2017-05-02 13:31:48
  • 提问者 野火燎原 #2
    不会返回db.json里的假数据,而是修改了db.json里的假数据
    回复 有任何疑惑可以回复我~ 2017-05-02 13:33:36
  • fishenal 回复 提问者 野火燎原 #3
    那我明白了,你应该是拷的 用json-server那套代码,json-server里面,post请求就是改变数据,获取数据是get请求,post请求根据reqParam 复写 db.json(理解成后端数据),因为post请求就是发送数据。
    回复 有任何疑惑可以回复我~ 2017-05-02 13:43:17
fishenal 2017-05-01 20:20:08

你的发送请求代码是什么样的?是不是用了 json-server? 用json-server的话 post请求会改变db.json里的值

0 回复 有任何疑惑可以回复我~
  • 提问者 野火燎原 #1
    代码都是源码,不用json-server的话 this.$http.post('/api/getPrice', reqParams)里的api不是就不能生效了?视频看下来里面好像也没说要禁用掉json-server。如何解决
    回复 有任何疑惑可以回复我~ 2017-05-02 13:16:39
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信