* 所有的 CDN 依賴已全部 npm 化 * Webpack? 一邊去! Vite 太好用啦! * 將 Imports.ts 剔除 * 移除了大量的靜態文件 * 將 index.html 的部分代碼分離 * 修改 deno task * 移除了動態編譯頁面的支持 * ./static 引用全部變更為 npm 包引用
20 lines
474 B
JavaScript
20 lines
474 B
JavaScript
/**
|
|
* @callback callback
|
|
* @param { Event } event
|
|
*/
|
|
|
|
import * as React from 'react'
|
|
|
|
/**
|
|
* 绑定事件
|
|
* @param { React.Ref } ref
|
|
* @param { String } eventName
|
|
* @param { callback } callback
|
|
*/
|
|
export default function useEventListener(ref, eventName, callback) {
|
|
React.useEffect(() => {
|
|
ref.current.addEventListener(eventName, callback)
|
|
return () => ref.current.removeEventListener(eventName, callback)
|
|
}, [ref, eventName, callback])
|
|
}
|