Vue組件之間的參數(shù)傳遞與方法調(diào)用的實(shí)例詳解
父組件向子組件
1.父組件向子組件傳參:父組件中的子組件標(biāo)簽中增加 :param="param"
子組件中增加 props 接受參數(shù)(注意props需要與data同級(jí))
props: {
param: {
type: Object
}
},
data() {
return {
...
}
},2.父組件調(diào)用子組件方法:父組件中子組件的標(biāo)簽增加 ref="abc"
例如:
<child ref="abc"></child>
然后在父組件中使用 refs直接調(diào)用子組件方法
例如:
this.$refs.abc.XXX()
子組件調(diào)用父組件方法
1.父組件中子組件的標(biāo)簽注冊(cè)方法 @abc="XXX"
子組件中使用$emit 調(diào)用父組件方法
例如:
// 無參
this.$emit('abc')
?
// 帶參
this.$emit('abc', {params})2.子組件使用$parent
例如:
// 方法
this.$parent.abc()
// 屬性
this.$parent.abcd = 1其它組件間調(diào)用
可以使用EventBus
在被調(diào)用的組件中使用EventBus.$on,在調(diào)用的組件中使用EventBus.$emit
例如:
被調(diào)用的組件中:
created() {
EventBus.$off('Name')
EventBus.$on('Name', (data1, data2) => {
this.method(data1,data2)
})
}調(diào)用的組件中:
EventBus.$emit('Name', res.data.list, flag)補(bǔ)充:
props的幾種寫法:
// 默認(rèn)寫法
props: {
btnClick: {
type: Function,
default: function() {}
},
titleName: {
type: String,
default: "內(nèi)容"
},
display: {
type: String,
default: "table"
},
columnNum: {
type: Number,
default: 1
},
columnslist: {
type: Array,
default() {
return [];
}
},
showPage: {
type: Boolean,
default: true
},
apiData: {
type: Object,
default() {
return {};
}
},
param: {
type: Object,
default() {
return {};
}
},
defaultParam: {
type: Boolean,
default() {
return true;
}
}
},
注意:如果默認(rèn)值的類型為數(shù)組或者對(duì)象的話,一定要在函數(shù)中返回這個(gè)默認(rèn)值,而不是直接寫,否則會(huì)報(bào)錯(cuò)
// 正確:
datalist:{
type:Array,
default:function(){
return []
}
}
?
// 錯(cuò)誤
datalist:{
type:Array,
default:[]
}
// 或者直接跟上面第一個(gè)代碼一樣,不管什么類型,都寫在函數(shù)返回中。補(bǔ)充2:VUE 父組件動(dòng)態(tài)傳值給子組件
http://chabaoo.cn/article/127980.htm
到此這篇關(guān)于Vue組件之間的參數(shù)傳遞與方法調(diào)用的實(shí)例詳解的文章就介紹到這了,更多相關(guān)vue參數(shù)傳遞內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue項(xiàng)目中使用bpmn-自定義platter的示例代碼
這篇文章主要介紹了vue項(xiàng)目中使用bpmn-自定義platter的實(shí)例代碼,本文通過代碼截圖相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-05-05
vue項(xiàng)目的html如何引進(jìn)public里面的js文件
這篇文章主要介紹了vue項(xiàng)目的html如何引進(jìn)public里面的js文件,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-12-12
Vue表單綁定的實(shí)例代碼(單選按鈕,選擇框(單選時(shí),多選時(shí),用 v-for 渲染的動(dòng)態(tài)選項(xiàng))
本文通過實(shí)例代碼給大家介紹了Vue表單綁定(單選按鈕,選擇框(單選時(shí),多選時(shí),用 v-for 渲染的動(dòng)態(tài)選項(xiàng))的相關(guān)知識(shí),非常不錯(cuò),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2019-05-05
vue 路由子組件created和mounted不起作用的解決方法
今天小編就為大家分享一篇vue 路由子組件created和mounted不起作用的解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-11-11
ElementUI中的el-dropdown傳入多參數(shù)的實(shí)現(xiàn)方法
本文主要介紹了ElementUI中的el-dropdown傳入多參數(shù)的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-12-12
關(guān)于vue.js v-bind 的一些理解和思考
本篇文章主要介紹了關(guān)于vue.js v-bind 的一些理解和思考,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-06-06
Vue中避免濫用this去讀取data中數(shù)據(jù)
這篇文章主要介紹了Vue中避免濫用this去讀取data中數(shù)據(jù)的的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)使用vue框架,感興趣的朋友可以了解下2021-03-03
vue 2.5.1 源碼學(xué)習(xí) 之Vue.extend 和 data的合并策略
這篇文章主要介紹了Vue.extend 和 data的合并策略 ,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-06-06

