this 和 _this 在 vue 中指向相同的當前 vue 實例。這有助于確保在所有情況下都能正確地訪問該實例,特別是在使用箭頭函數(shù)的情況下。一般情況下建議使用 this,但在需要明確表示當前實例或與第三方庫集成時,可以使用 _this。
Vue 中 this 和 _this 的區(qū)別
快速回答:
this
和 _this
在 Vue 中是相同的,都指向當前的 Vue 實例。
詳細解釋:
在 Vue 中,this
指向當前的 Vue 實例,它包含所有與該實例相關的數(shù)據(jù)和方法。_this
是 this
的一個別名,本質上沒有任何區(qū)別。
原因:
在早期的 Vue 版本中,this
會在使用箭頭函數(shù)時被綁定到錯誤的上下文。為了解決這個問題,Vue 添加了 _this
作為 this
的一個別名,以確保在所有情況下都能正確地訪問當前實例。
何時使用 this
和 何時使用
_this`?
由于 this
和 _this
是相同的,因此可以互換使用。一般情況下,使用 this
更加常見,因為它更容易理解。但是,在以下情況下使用 _this
可能更有用:
當你想要明確地表示你正在使用 this
指向當前實例。
當你使用第三方庫時,該庫可能需要明確的 _this
引用。
需要注意:
在 Vue 3.2+ 版本中,_this
已被棄用,取而代之的是使用 this
。
在模板中,this
和 _this
無法訪問,因為模板是在運行時編譯的。