Vue技术栈开发实战(三)——状态管理Bus的使用

Bus的使用

我们在不相关的两个组件中传递数据,可以使用bus,原理就是给bus向外触发事件,然后bus监听事件触发

在lib目录下新建新建bus.js,写入

import Vue from 'vue'

const Bus = new Vue()

export default Bus

然后在main.js中导入这个index.js,并在实例原型中注入这个bus

import Bus from '@/lib/bus'

Vue.prototype.$bus = Bus

第一个组件中写入 

<template>
  <div>
    <button @click="handleClick">点击</button>
  </div>
</template>

<script>
export default {
  mounted () {
    console.log(this.$bus)
  },
  methods: {
    handleClick () {
      this.$bus.$emit('click', 'hello')
    }
  }
}
</script>

第二个组件中写入 

<template>
  <div>
    <p>{{msg}}</p>
  </div>
</template>

<script>
export default {
  data () {
    return {
      msg: ''
    }
  },
  mounted () {
    this.$bus.$on('click', msg => (this.msg = msg))
  }
}
</script>

 

 

Vuex基础——state,getter

Vuex基础——mutation,action/module

Vuex进阶

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风里有诗句哈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值