日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

vue邪道玩法 : 把vue实例存在别的地方,以及可能会遇到的问题

發(fā)布時間:2025/6/17 61 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vue邪道玩法 : 把vue实例存在别的地方,以及可能会遇到的问题 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一般來說,VUE項目中,this指向VUE實例。

但有的時候,某些代碼會改變this的指向。

這時,可以用一個臨時變量存儲VUE實例。

test1(){
var _this = this // 把vue實例的引用存一份
var arr = [imageObject,imageObject,imageObject]for (let i in arr) {arr[i].onload = function() {/* 此時的this指向被改變了 */}} }

但有時,你可能不得不在一開始就存一份vue實例的引用。

你可以在 created 階段?

window._this = this

然后在 beforeDestroy 階段

window._this = null

?

那么問題來了:如果父組件和子組件都聲明了?

window._this = this

會怎樣?回答:你的父組件的引用很可能會被子組件覆寫。即,在父組件使用 _this 的時候,所指的會是子組件的VUE實例。

那怎么辦呢?

你可以在父組件里聲明一個對象,用來存儲子組件的引用。

this.CHILD_VM = {key1:CHILD_VM_1, // 子組件 1 的VUE實例的引用key2:CHILD_VM_2, // 子組件 2 的VUE實例的引用 }

而在子組件中把存引用的代碼改成:

_this.CHILD_VM.key1 = this

?

以上。

轉(zhuǎn)載于:https://www.cnblogs.com/foxcharon/p/11073342.html

《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的vue邪道玩法 : 把vue实例存在别的地方,以及可能会遇到的问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。