import { useState, useEffect } from 'react'
function useIsVisibility(ref){
const [state,setState]=useState(false)
useEffect(()=>{
console.log("useIsVisibility")
})
if(ref&&IntersectionObserver){
const intersectionObserver = new IntersectionObserver((entries) => {
if (entries[0].intersectionRatio <= 0){
console.log("在视野外")
setState(false)
return false
} else{
console.log("在视野内")
setState(true)
return true
}
});
intersectionObserver.observe(ref);
}
return state
}
function useMousePosition() {
const [x, setX] = useState(0)
const [y, setY] = useState(0)
useEffect(() => { function mouseMoveHandler(event)
{
setX(event.clientX)
setY(event.clientY) }
document.body.addEventListener('mousemove', mouseMoveHandler)
return () => document.body.removeEventListener('mousemove', mouseMoveHandler)
}, [])
return [x, y]
}
export default useMousePosition