CustomEvent自定义事件

通过CustomEvent可以定义一个自定义事件,用来定义一个全新的事件目标

CustomEvent()可接收两个参数,第一个参数是一个字符串,用来表示事件类型,第二个参数是一个对象,指定事件属性,可以将这个对象的detail属性设置为一个字符串、对象或其他值,表示事件的上下文

如下代码:

// 定义一个busy事件表示很忙
document.dispatchEvent(new CustomEvent("busy",{ detail: true }))

fetch(url)
    .then(handlerFunc)
    .catch(handlerError)
    .finally(()=>{
        // 不论请求成功与否,都将busy事件上下文修改为false,表示已经不忙了
        document.dispatchEvent(new CustomEvent("busy",{ detail: false }))
    })
// 监听busy事件情况显示隐藏节点
document.addEventListener("busy", e=>{
    if(e.detail){
        show()
    }else{
        hide()
    }
})

 

posted @ 2021-12-22 20:33  邢韬  阅读(529)  评论(0编辑  收藏  举报