是否可以在 useState Hook 中定位 className? target.className == "test"
是我具体查看的内容。是否可以查找一个类以及该类是否处于事件状态隐藏/显示另一个 div 页面元素?
我可能离这个目标很远,但是正在寻求建议。
// Click tracking of className "test"
const [isSelected, setIsSelected] = useState(true)
const selectToggle = (target.className == "test") =>
setIsSelected({ ...isSelected, [test]: !isSelected[test] })
最佳答案
您可以使用 useRef
跟踪元素及其引用,检查将记录它跟踪的元素的控制台:
import React, { useState, useRef, useEffect } from 'react';
import ReactDOM from 'react-dom';
const App = () => {
const [isSelected, setIsSelected] = useState(true);
const elementRef = useRef();
useEffect(() => {
console.log(elementRef.current);
});
const toggle = () => setIsSelected(s => !s);
return (
<>
{isSelected && <div ref={elementRef}>Im Tracked</div>}
<button onClick={toggle}>{`Click to ${
isSelected ? 'disable' : 'enable'
}`}</button>
</>
);
};
ReactDOM.render(<App />, document.getElementById('root'));
关于javascript - 是否可以使用 useState Hook 来定位 className?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58959155/