【发布时间】:2020-07-10 06:29:08
【问题描述】:
如何使用 Jest & Enzyme 测试以下功能?
const TheComponent = () => {
const [setActive, setActiveState] = useState('');
const [setHeight, setHeightState] = useState('0px');
const content = useRef(null);
const toggleExpand = () => {
setActiveState(setActive === '' ? 'active' : '');
setHeighState(setActive === 'active' ? '0px' : `${content.current.scrollHeight}px`);
};
return (
<div>
<div ref={content} style={{maxHeight: `${setHeight}`}}>
</div>
<button onClick={toggleExpand}>
<span className={`text ${setActive === 'active' ? 'active' : 'disabled'} `}>Collapse</span>
<span className={`text ${setActive === '' ? 'active' : 'disabled'} `}>Expand</span>
</button>
</div>
);
}
让我失望的是在 toggleExpand onClick 上同时调用 setActiveState 和 setHeightState,我也不知道如何传入或模拟 content.current.scrollHeight
【问题讨论】:
标签: javascript reactjs jestjs react-hooks