vue中關於非同步元件怎麼觸發全域性事件

2021-09-02 23:03:00 字數 814 閱讀 8818

我盡量清楚的描述問題情境吧,請知道解決方案的大腿教我做人、教我解決,萬分萬分地不勝感激!!!

專案是vue的,在路由檔案裡元件都是採用非同步方式載入,路由檔案部分截圖如下:

元件庫用的是elementui,elementui有乙個**的元件,這個**元件可以將某一**項進行固定,官網示例:

可以看到,當橫向內容過多時,日期和操作兩列被固定在**的左右兩側。但是當螢幕可用寬度足以放下整個寬度的**時,左右固定兩列還是有陰影顯示,那麼我需要在寬度可以容納的情況下不顯示這個陰影,而且在瀏覽器視窗resize的情況下陰影是否顯示也是取決於寬度夠不夠。處理這個陰影和resize的函式體我已經寫好了,可是這個專案裡很多頁面都有**,我並不覺得在每乙個vue檔案去呼叫這個處理函式是乙個好方法,所以我想有乙個「偷懶」的方式直接作用於當前顯示的頁面dom。我試著layout.vue(理解為用來布局的吧,layout.vue裡放了幾個子元件,然後那些子元件又會進行劃分,以此組成整個頁面)中去呼叫,並對頁面路由進行了監聽來呼叫處理函式,然而處理函式中總是不能獲取到當前頁面元素的dom,總是感覺好像反應慢了一步,比如我已經從a.vue跳轉到了b.vue顯示的頁面內容,然而處理函式裡好像總是慢了一拍,在b.vue裡獲取到的dom元素是a.vue的,這肯定和元件的非同步載入方式有關。

羅里吧嗦了一堆,我的問題就是,在元件非同步載入的情況下,當子元件載入完成時怎麼觸發這樣乙個全域性函式?

Vue中的非同步元件

使用過vue 的小夥伴都知道vue自定義元件,和元件引入方式。今天筆者要記錄並介紹vue 元件的三種引入方式。傳統引入方式,即最常見的引入方式 import leftline from views admanage components stepline components 這是使用本地註冊的方式...

Vue 父元件如何觸發子元件中的方法

子元件 child 父元件 點選 1.首先父元件匯入子元件並且在components中定義子元件 2.引用子元件,並定義ref,用於 this.refs.mychild 呼叫 3.呼叫子元件的方法 parenthandleclick 為子元件的方法 注 在呼叫子元件的方法時 this.refs.my...

vue布局中怎麼引用引數 Vue元件引數傳遞問題

vue元件引數傳遞問題 元件中的data為什麼是函式?元件中的資料是儲存在 呢?頂層的vue例項中嗎?並不是的,元件無法訪問vue例項中的data。即使可以訪問,如果所有元件的資料都在頂級vue例項中,那麼vue中的data會十分的臃腫。元件中的資料應該由自己管理。元件是乙個單獨功能模組的封裝,這個...