首页 > 解决方案 > ReferenceError:NextJS 项目中未定义 CustomEvent

问题描述

我收到错误:ReferenceError: CustomEvent is not defined。我知道 CustomEvent 仅在浏览器中可用(客户端),但我正在尝试将此函数用作事件:

const mouseEnterHandler =  () => {
  eventDispatcher('cursor', {
    label: 'test',
  })
}

onMouseEnter={mouseEnterHandler()}

export const eventCreator = (name: string, params: Record<string, any>): CustomEvent => {
  const event = new CustomEvent(name, {
    detail: params
  })

  return event
}

export const eventDispatcher = (name: string, params: Record<string, any>): CustomEvent => {
  const event: CustomEvent = eventCreator(name, params)

  document.dispatchEvent(event)

  return event
}

标签: reactjsnext.js

解决方案


把它放在一个useEffect钩子里,它会工作的。


推荐阅读