最近維護vue+element的老專案,有一個dialog組件需要在另外一個頁面中復用,而這兩個頁面沒有任何聯系。資料比較龐大方法比較多,笨辦法就是一一復制,但是很容易出問題,有沒有更簡單的辦法?


uj5u.com熱心網友回復:
你的意思是原本這個組件在一個頁面中使用了,并且跟那個頁面有很多的資料互動。然后你現在想要把這個組件放到另一個頁面上去,同時還要把資料也帶過去使用是么uj5u.com熱心網友回復:
對的,愁死了。這是產品的需求。感覺一陣禿頭uj5u.com熱心網友回復:
用事件總線就好了,很簡單的,把資料打包傳到事件總線上,然后在那個頁面監聽一下事件總線上的事件以及資料就好了uj5u.com熱心網友回復:
事件總線?是事件中心得意思嗎,我百度了下也是eventBus,咋用啊大佬
uj5u.com熱心網友回復:
你翻我一篇博客看看吧,有講到事件總線,如果看不懂你就私信我,再幫你uj5u.com熱心網友回復:
我原本得意思是這樣的:有一個頁面A,頁面A中有一個dialog,dialog在A頁面里面包含了有幾十個資料;現在有一個頁面B,需要使用這個dialog,而我能想到得最笨的方法就是復制組件過去,然后資料一點一點的改。。uj5u.com熱心網友回復:
嗯嗯好的uj5u.com熱心網友回復:
把這個組件注冊到全域不就可以在任何頁面使用了?import dialog from '../dialog'
Vue.component('my-dialog', dialog)
使用
<my-dialog></my-dialog>
uj5u.com熱心網友回復:
是的,就是用一個事件總線就行了,其實不用事件總線 你就用普通的父子組件通信就好了。設組件為C,C在A里,A是C的父組件,現在C要用到B里面, 那B就是C的父組件啦。普通的父子組件通信也可以完成你要的功能的uj5u.com熱心網友回復:
把這個組件注冊到全域不就可以在任何頁面使用了?
import dialog from '../dialog'
Vue.component('my-dialog', dialog)
使用
<my-dialog></my-dialog>
uj5u.com熱心網友回復:
是的,就是用一個事件總線就行了,其實不用事件總線 你就用普通的父子組件通信就好了。設組件為C,C在A里,A是C的父組件,現在C要用到B里面, 那B就是C的父組件啦。普通的父子組件通信也可以完成你要的功能的
我原本得意思是這樣的:有一個頁面A,頁面A中有一個dialog,dialog在A頁面里面包含了有幾十個資料;現在有一個頁面B,需要使用這個dialog,而我能想到得最笨的方法就是復制組件過去,然后資料一點一點的改。。
用事件總線就好了,很簡單的,把資料打包傳到事件總線上,然后在那個頁面監聽一下事件總線上的事件以及資料就好了
uj5u.com熱心網友回復:
別想著單獨抽離。。。這怎么抽離啊 組件用到別的頁面必定要資料互動的。你只能這樣,不然你就用vuexuj5u.com熱心網友回復:
別想著單獨抽離。。。這怎么抽離啊 組件用到別的頁面必定要資料互動的。你只能這樣,不然你就用vuex
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/38905.html
標籤:JavaScript
下一篇:大佬們快看一下啊
