色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

3個vue項目聯動

阮建安1年前8瀏覽0評論

這篇文章將介紹如何將3個Vue項目進行聯動。這些項目的名稱分別為A、B和C。在這3個項目中,A是主要的項目,而B和C是輔助項目。

首先,我們需要在A項目中創建一個globalBus。這是一個Vue實例,可以用于向其他項目發送數據

// main.js
import Vue from 'vue'
export const globalBus = new Vue({
data: {
dataFromB: null,
dataFromC: null
}
})

然后,在B和C項目中,我們需要通過Vue.use()方法來安裝Vue-socket.io。這將使得B和C項目可以通過socket獲取數據。

// main.js
import Vue from 'vue'
import VueSocketIO from 'vue-socket.io'
Vue.use(new VueSocketIO({
debug: true,
connection: 'http://localhost:3001'
}))

在B項目中,我們需要監聽來自socket的事件。當數據更新時,我們要將數據發送到globalBus中。

// B.vue
import { globalBus } from '../../main'
export default {
data() {
return {
data: null
}
},
mounted() {
this.$socket.on('data', data =>{
this.data = data
globalBus.dataFromB = data
})
}
}

類似地,在C項目中,我們也需要監聽來自socket的事件。并將數據發送到globalBus中。

// C.vue
import { globalBus } from '../../main'
export default {
data() {
return {
data: null
}
},
mounted() {
this.$socket.on('data', data =>{
this.data = data
globalBus.dataFromC = data
})
}
}

最后,在A項目中,我們需要監聽globalBus的數據變化。當數據變化時,我們可以更新自己的內容。

// A.vue
import { globalBus } from '../../main'
export default {
data() {
return {
dataFromB: null,
dataFromC: null
}
},
mounted() {
globalBus.$watch('dataFromB', value =>{
this.dataFromB = value
})
globalBus.$watch('dataFromC', value =>{
this.dataFromC = value
})
}
}

到這里,我們已經完成了3個Vue項目的聯動?,F在,當B或C項目中的數據更新時,A項目中的內容也會更新。