消息订阅与发布(pubsub)
- 一种组件间通信的方式,适用于
任意组件间的通信。 - 使用步骤:
- 安装pubsub:
npm i pubsub-js - 引入:
import pubsub from 'pubsub-js' - 接收数据:A组件想接收数据,则在A组件中订阅消息,订阅的
回调留在A组件自身。methods() { demo(data){......} } ...... mounted() { this.pid = pubsub.subscribe('xxx',this.demo)//订阅消息 } - 提供数据:
pubsub.publish('xxx',数据) - 最好在buforeDestroy钩子中,用
pubsub.unsubscribe(pid)去取消订阅
- 安装pubsub:
nextTick
- 语法:
this.$nextTick(回调函数) - 作用:在下一次DOM更新结束后执行其指定的回调。
- 什么时候用:当改变数据后,要基于更新后的新DOM进行某些操作时,要在nextTick所指定的回调函数中执行。
Vue封装的过渡与动画
- 作用:在插入、更新或移除DOM元素时,在合适的时候给元素添加样式类名。
- 图示:
- 写法:
- 准备好样式:
- 元素进入的样式:
- v-enter:进入的起点
- v-enter-active:进入的过程
- v-enter-to:进入的终点
- 元素离开的样式:
- v-leave:离开的起点
- v-leave-active:离开的过程
- v-leave-to:离开的终点
- 元素进入的样式:
- 使用
<transition>包裹要过度的元素,并配置name属性,vue中transition实现动画效果,在标签中添加appear="true"(可简写成appear),可以实现页面加载完毕执行动画:<transition name="hello"> <h1 v-show="isShow">你好啊!</h1> </transition> - 备注:若有多个元素需要过渡,则需要使用:
<transition-group>,且每个元素都要指定key值。
- 准备好样式: