pubsub

实现消息订阅于发布
先安装pubsub

1
npm i pubsub-js

可以实现消息订阅与发布,他的操作主要有subscribe订阅,unsubscribe取消订阅,publish发布消息。每次取消订阅需要获取订阅的id再用案例订阅

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
//学校
<script>
import pubsub from 'pubsub-js';
export default({
name:'school',
data(){
return{
schoolName:'湖科大',
addr:'湖南'
}
},
mounted(){
const pubid = pubsub.subscribe('hello',function(messageName,data){
console.log('成功订阅消息',messageName,data)
})
},
beforeDestroy(){
pubsub.unsubscribe(pubid)
}
})
</script>
//学生
<script>
import pubsub from 'pubsub-js';
export default {
name:'Student',
data(){
return{
name:'hzt',
sex:'男'
}
},
mounted(){

},
methods:{
sendStudentName(){
pubsub.publish('hello',666)
}
}
}
</script>

Vue.set的使用

例如

1
2
3
handleEdit(todo){
this.$set(todo,'isEdit',true)
}

他的作用是给todo数组添加一个属性isEdit且值为true,这个属性会接受数据代理,能够被vue所检测到。