Vue.js中axios的this指向問題

1.遇到的問題

(前提是:這個data在data(){}中return了。)

在this.$axios.get("url").then(方法)中使用this.data時,遇到錯誤 data is undefined。

原因是這時this沒有指向vue實例。

2.解決方法

(1)使用var _this=this,聲明vue實例,後面再調用this時,直接使用_this。

(2)在then(方法)中,使用ES6新增的箭頭函數來改變this指向

3.涉及到的知識點

ES6中箭頭函數 "()=>" 其實是沒有 this 的,箭頭函數中的 this 只取決包裹箭頭函數的第一個普通函數的 this。

這裏的外層調用者既是vue。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章