[英]React - error in useEffect(). does dat make everything on page go in infinite loop?
[英]useEffect does not go to if statements
並不真正理解為什么這個代碼部分不能正常工作。 這個useEffect
塊在每個 scrollY position 上重新渲染。 另外,我看到這個代碼部分: console.log(wrapperRef.current.style.opacity);
應該調用 if 和 else if 語句,但它沒有。
這是代碼:
useEffect(() => { console.log(wrapperRef.current.style.opacity); if (wrapperRef.current.style.opacity === 0) { setIsHidden(true); console.log("true"); } else if (wrapperRef.current.style.opacity === 1) { setIsHidden(false); console.log("false"); } }, [position]);
正如您在此處看到的,樣式值是字符串,但使用===
運算符您還可以檢查類型是否相等。
這意味着您檢查'0' === 0
這不是同一類型,以及為什么您的檢查從不進入 if 正文。
檢查'0'
或使用忽略類型的==
運算符。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.