問題背景
在vue中使用axios做網絡請求的時候,會遇到this不指向vue,而為undefined。
如下圖所示,我們有一個 login 方法,希望在登錄成功之后路由到主頁,但通過 this.$router 獲取路由器出錯。
解決方案
使用箭頭函數替代普通函數,ES6中的箭頭函數 “=>” 內部的 this 屬於詞法作用域,由上下文確定(也就是由外層調用者vue來確定)。
改成如下圖所示,我們看到 this.router 已經正確的返回了路由器對象。
so, 遇到類似問題的朋友們,箭頭函數用起來。
作者:朝雨憶輕塵
出處:https://www.cnblogs.com/xifengxiaoma/
版權所有,歡迎轉載,轉載請注明原文作者及出處。