是否可以在useState挂钩中定位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] })
答案 0 :(得分:1)
您可以使用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'));