亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Vue3中g(shù)etCurrentInstance、頁面中route和router的獲取實現(xiàn)方式

 更新時間:2025年04月18日 10:31:10   作者:熬夜胡蘿北  
這篇文章主要介紹了Vue3中g(shù)etCurrentInstance、頁面中route和router的獲取實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

getCurrentInstance、頁面中route和router的獲取方式

getCurrentInstance()

在vue2中,可以通過this來獲取組件實例,但是在vue3的setup函數(shù)中,無法通過this獲取到組件實例,在setup函數(shù)中this的值是undefined,但是vue3提供了getCurrentInstance()來獲取組件的實例對象;

    const { ctx,proxy } = getCurrentInstance();
    console.log(typeof getCurrentInstance);
    console.log(getCurrentInstance(), typeof getCurrentInstance());
    console.log(proxy, typeof proxy);
    console.log(ctx, typeof ctx);

輸出結(jié)果:

可以看出,getCurrentInstance是一個方法,getCurrentInstance()是一個對象,ctx和proxy也是一個對象,ctx和proxy是getCurrentInstance()對象中的一個屬性,通過解構(gòu)賦值的方式拿到的,ctx是一個普通的對象,而proxy是一個proxy對象,兩者里面都可以看到當前組件的data值和方法,可以使用proxy[屬性名]去獲取實例對象中的數(shù)據(jù)或者調(diào)用對象中的方法;

getCurrentInstance只能在setup函數(shù)或生命周期鉤子函數(shù)中使用;

ctx對象和proxy對象的區(qū)別:

1、從getCurrentInstance方法中解構(gòu)出來的ctx對象,只能在開發(fā)環(huán)境下使用,生產(chǎn)環(huán)境下ctx將訪問不到(不推薦使用)

2、proxy對象在開發(fā)環(huán)境以及生產(chǎn)環(huán)境中都能拿到組件實例對象(推薦使用)

獲取組件實例對象的方式

1、獲取掛載到全局中的方法

const instance = getCurrentInstance()
console.log(instance.appContext.config.globalProperties)

2、利用proxy對象

const { proxy } = getCurrentInstance()  

獲取route和router的方式

  • 方法一:通過getCurrentInstance()方法獲取到組件實例,從而獲取到route和router
import { getCurrentInstance } from "vue";
const { proxy } = getCurrentInstance();
proxy.$router.push({ path: "/home" });  // 實現(xiàn)路由跳轉(zhuǎn)
console.log("獲取當前路由---》", proxy.$route)
  • 方法二:通過從vur-router中引入useRoute()、useRouter()方法來獲取到route和router
import { useRoute, useRouter } from 'vue-router'
const router = useRouter();
const route = useRoute();
console.log('當前路由:', route)
router.push({ path: "/home" });

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue2移動端+swiper實現(xiàn)異形的slide方式

    vue2移動端+swiper實現(xiàn)異形的slide方式

    這篇文章主要介紹了vue2移動端+swiper實現(xiàn)異形的slide方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • Vue頁面生成PDF的最佳方法推薦

    Vue頁面生成PDF的最佳方法推薦

    公眾中經(jīng)常會有這種場景,一些合同、協(xié)議等的頁面需要進行下載,而且需要和頁面保持一致,下面這篇文章主要給大家介紹了關(guān)于Vue頁面生成PDF的最佳方法,需要的朋友可以參考下
    2022-05-05
  • 解決vue動態(tài)路由異步加載import組件,加載不到module的問題

    解決vue動態(tài)路由異步加載import組件,加載不到module的問題

    這篇文章主要介紹了解決vue動態(tài)路由異步加載import組件,加載不到module的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • vue自定義組件如何添加使用原生事件

    vue自定義組件如何添加使用原生事件

    這篇文章主要介紹了vue自定義組件如何添加使用原生事件,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • vue觸發(fā)真實的點擊事件跟用戶行為一致問題

    vue觸發(fā)真實的點擊事件跟用戶行為一致問題

    這篇文章主要介紹了vue觸發(fā)真實的點擊事件跟用戶行為一致問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • Vue組件間傳值的實現(xiàn)解析

    Vue組件間傳值的實現(xiàn)解析

    組件是?vue.js?最強大的功能之一,而組件實例的作用域是相互獨立的,這就意味著不同組件之間的數(shù)據(jù)無法相互引用,這篇文章主要介紹了Vue組件間傳值的實現(xiàn)
    2022-09-09
  • vue自定義指令之面板拖拽的實現(xiàn)

    vue自定義指令之面板拖拽的實現(xiàn)

    這篇文章主要介紹了vue自定義指令之面板拖拽的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • Vue組件間的雙向綁定示例解析

    Vue組件間的雙向綁定示例解析

    這篇文章主要介紹了Vue組件間的雙向綁定,我們都知道當父組件改變了某個值后,如果這個值傳給了子組件,那么子組件也會自動跟著改變,但是這是單向的,使用v-bind的方式,即子組件可以使用父組件的值,但是不能改變這個值
    2023-03-03
  • 基于Vue.js的表格分頁組件

    基于Vue.js的表格分頁組件

    這篇文章主要為大家詳細介紹了基于Vue.js的表格分頁組件使用方法,了解了Vue.js的特點,感興趣的朋友可以參考一下
    2016-05-05
  • vitejs預(yù)構(gòu)建理解及流程解析

    vitejs預(yù)構(gòu)建理解及流程解析

    這篇文章主要為大家介紹了vitejs預(yù)構(gòu)建理解及流程解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07

最新評論