非父子元件間的傳值
<html>
<head>
<meta charset="UTF-8">
<title>非父子元件的傳值(bus/匯流排、釋出者訂閱模式、觀察者模式</title>
<script type="text/javascript" src="js/vue.js" ></script>
</head>
<body>
<div id="root">
<!--兄弟之間的關係如何進行傳值呢 把上面的dell傳給下面的li 通過匯流排傳遞-->
<child content="dell"></child>
<child content="li"></child>
</div>
<script>
Vue.prototype.bus = new Vue()//每呼叫Vue例項都會含有bus屬性,bus是vue的例項
Vue.component('child',{
props:{
content:String
//引數校驗
},
template:'<div @click="handleClick">{{content}}</div>',
methods:{
handleClick:function () {
// alert(this.content);把彈出的內容傳遞出去
//$emit 裡的引數第一個是事件名,第二個是傳遞的東西 emit來傳遞
this.bus.$emit('change',this.content)
}
},
mounted:function () {//宣告週期鉤子函式來 監聽傳來的資料 on來監聽bus觸發的時間
var this_ = this
this.bus.$on('change',function (msg) {
this_.content = msg
//alert(msg)
})
}
})
var vm= new Vue({
el:"#root",
})
</script>
</body>
</html>
上面的值傳給下面,但是報錯了,以內牆改了父元件傳來的值,所以要定義data函式在子元件裡
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>非父子元件的傳值(bus/匯流排、釋出者訂閱模式、觀察者模式</title>
<script type="text/javascript" src="js/vue.js" ></script>
</head>
<body>
<div id="root">
<!--兄弟之間的關係如何進行傳值呢 把上面的dell傳給下面的li 通過匯流排傳遞-->
<child content="dell"></child>
<child content="li"></child>
</div>
<script>
Vue.prototype.bus = new Vue()//每呼叫Vue例項都會含有bus屬性,bus是vue的例項
Vue.component('child',{
data:function(){
return{
selfContent:this.content
}
},
props:{
content:String
//引數校驗
},
template:'<div @click="handleClick">{{selfContent}}</div>',
methods:{
handleClick:function () {
// alert(this.content);把彈出的內容傳遞出去
//$emit 裡的引數第一個是事件名,第二個是傳遞的東西 emit來傳遞
this.bus.$emit('change',this.selfContent)
}
},
mounted:function () {//宣告週期鉤子函式來 監聽傳來的資料 on來監聽bus匯流排觸發的事件
var this_ = this
this.bus.$on('change',function (msg) {
this_.selfContent = msg
//alert(msg)
})
}
})
var vm= new Vue({
el:"#root",
})
</script>
</body>
</html>
相關文章
- 元件:非父子間傳值(同級傳值)元件
- vue父子傳值與非父子傳值Vue
- 父子元件之間的傳值問題元件
- vue---註冊元件、元件之間父子傳值Vue元件
- vue父子元件之間傳值以及方法呼叫Vue元件
- 簡單說說vue的父子元件,父子元件傳值和vuexVue元件
- Vue父子之間的值傳遞Vue
- 非父子元件之間傳值(Bus/匯流排/釋出訂閱模式/觀察者模式)元件模式
- 3.Vue非父子元件之間的通訊Vue元件
- vue元件封裝及父子元件傳值,事件處理Vue元件封裝事件
- Vue父子元件如何雙向繫結傳值Vue元件
- Vue 元件間傳值Vue元件
- Vue父子元件雙向繫結傳值的實現方法Vue元件
- Vue之元件間傳值Vue元件
- 微信小程式父子元件之間的資料傳遞微信小程式元件
- 父子元件的資料傳遞元件
- vue 父子元件傳值報錯:this.$emit is not a function 解決Vue元件MITFunction
- Vue 元件間的傳值(通訊)Vue元件
- Vue - 元件之間的傳值方式Vue元件
- Vue學習小札——2.4 父子元件間的資料傳遞Vue元件
- 父子元件資訊傳遞元件
- 關於vue中props特性以及父子之間傳值的總結Vue
- vue---元件間傳遞訊息(父子傳遞訊息,兄弟傳遞訊息)Vue元件
- vue-父子元件之傳值和單項資料流問題Vue元件
- vue 兄弟元件之間傳值之busVue元件
- 初識React(8):父子元件傳參React元件
- Vue2.0父子元件間通訊Vue元件
- 窗體傳值 父子窗體傳值情況 c# 1231C#
- vue兩個元件間值的傳遞或修改方式Vue元件
- Angular父子元件通過服務傳參Angular元件
- RXJS元件間超越父子關係的相互通訊JS元件
- vue父子元件傳參後,子元件重新初始化Vue元件
- (精華)2020年7月12日 vue 非父子元件相互傳參(釋出訂閱)Vue元件
- 動態渲染之vue頁面向元件間傳值Vue元件
- Vue--子元件之間相互呼叫及傳值Vue元件
- Vue 父子元件資料傳遞( inheritAttrs + $attrs + $listeners)Vue元件
- Vue 與 React 父子元件之間的家長裡短VueReact元件
- Vue 元件傳值Vue元件