在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ vue2.0 axios 獲取數(shù)據(jù)報錯

vue2.0 axios 獲取數(shù)據(jù)報錯

數(shù)據(jù)無法加載,報錯怎么解決?求大神解答

<template>
  <div class="recommend">
    <div class="recommend-content">
      <scroll ref="scroll" class="recommend-content">
        <div>
          <div v-if="recommends.length" class="slider-wrapper" ref="sliderWrapper">
            <slider>
              <div v-for="item in recommends">
                <a :href="item.mien_img">
                  <img class="needsclick" @load="loadImage" :src="item.mien_img">
                </a>
              </div>
            </slider>
          </div>
        </div>
      </scroll>
    </div>
  </div>
</template>

<script type="text/ecmascript-6">
  import Slider from 'base/slider/slider'
  import Scroll from 'base/scroll/scroll'
  import axios from 'axios'
  import qs from 'qs'
  const ERR_OK = 200
  export default {
    data() {
      return {
        recommends: []
      }
    },
    created() {
      this.getRecommend()
    },
    methods: {
      getRecommend() {
        var token = JSON.parse(localStorage.token)
        axios.post(url, qs.stringify({
          token: token
        })).then(function(res) {
          console.log(res)
          if (res.status === ERR_OK) {
          this.recommends =res.data.data
          }
        })
      }
    },
    components: {
      Slider,
      Scroll
    }
  }
</script>

圖片描述

回答
編輯回答
黑與白

this.recommends中的this已經(jīng)不是vue實例了。

getRecommend(){
    let _self = this;
    
    ...
    ...
    ...
    
    _self.recommends = res.data.data
}
2017年8月1日 09:43
編輯回答
毀了心

this指向問題,一樓回答很標(biāo)準(zhǔn)了。

2018年2月26日 02:42
編輯回答
情已空

this的指向問題。

if (res.status === ERR_OK) {
    console.log(this)  // 查看控制臺看看this是什么
  this.recommends =res.data.data
}

解決方案,使用箭頭函數(shù)

 axios.post(url, qs.stringify({
  token: token
})).then((res) => {
  console.log(res)
  if (res.status === ERR_OK) {
      this.recommends = res.data.data
  }
})
2017年1月8日 00:04
編輯回答
瘋浪

在created里面 this.這個方法以及數(shù)據(jù)是未定義的 你可以在數(shù)據(jù)加載完成鉤子函數(shù)里使用 不然它是未定義的

2017年10月24日 19:20
編輯回答
墨染殤

把then里面的函數(shù)寫成閉包形式 () => {},this就還是原來的vue實例。

2018年7月6日 07:17