Vue3 + Pinia + Vite5 仿抖音,完全度90% . Vue3 + Pinia + Vite5 imitate TikTok with 90% completeness
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

18 lines
341 B

export default {
eventMap: new Map(),
on(eventType, cb) {
let cbs = this.eventMap.get(eventType)
if (cbs) {
cbs.push(cb)
} else {
cbs = [cb]
}
this.eventMap.set(eventType, cbs)
},
emit(eventType, val) {
let cbs = this.eventMap.get(eventType)
if (cbs) {
cbs.map(cb => cb(val))
}
}
}