非父子元件間的傳值
<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元件
- 非父子元件之間傳值(Bus/匯流排/釋出訂閱模式/觀察者模式)元件模式
- Vue父子之間的值傳遞Vue
- 3.Vue非父子元件之間的通訊Vue元件
- vue元件封裝及父子元件傳值,事件處理Vue元件封裝事件
- Vue父子元件如何雙向繫結傳值Vue元件
- Vue 元件間傳值Vue元件
- 微信小程式父子元件之間的資料傳遞微信小程式元件
- Vue父子元件雙向繫結傳值的實現方法Vue元件
- 父子元件資訊傳遞元件
- Vue之元件間傳值Vue元件
- vue 父子元件傳值報錯:this.$emit is not a function 解決Vue元件MITFunction
- 父子元件的資料傳遞元件
- vue2.0 非父子元件之間的單一事件通訊Vue元件事件
- Vue - 元件之間的傳值方式Vue元件
- Vue 元件間的傳值(通訊)Vue元件
- Vue學習小札——2.4 父子元件間的資料傳遞Vue元件
- 父子元件之間通訊元件
- Vue.js 元件之間的傳值Vue.js元件
- vue.js使用props在父子元件之間傳參Vue.js元件
- vue---元件間傳遞訊息(父子傳遞訊息,兄弟傳遞訊息)Vue元件
- 關於vue中props特性以及父子之間傳值的總結Vue
- vue-父子元件之傳值和單項資料流問題Vue元件
- 初識React(8):父子元件傳參React元件
- vue 兄弟元件之間傳值之busVue元件
- Vue2.0父子元件間通訊Vue元件
- Vue2---父子元件之間的訪問Vue元件
- Angular父子元件通過服務傳參Angular元件
- vue兩個元件間值的傳遞或修改方式Vue元件
- vue父子元件傳參後,子元件重新初始化Vue元件
- Vue 元件傳值Vue元件
- Vue 父子元件資料傳遞( inheritAttrs + $attrs + $listeners)Vue元件
- Vue--子元件之間相互呼叫及傳值Vue元件