我使用“useEffect”来实现功能组件中“componentWillUnmount”的功能。如何在使用 Jest/Enzyme 测试组件时触发它?
我的组件:
const myComp = () => {
useEffect(() => () => {
console.log('Unmounted');
}, []);
return <div>Test</div>;
}
Run Code Online (Sandbox Code Playgroud) 我有一个像下面这样的自定义钩子
const useSum = (a = 1, b = 1) => {
const [sum, setSum] = useState(a + b);
useEffect(() => {
setSum(a + b);
}, [a, b]);
return sum;
}
Run Code Online (Sandbox Code Playgroud)
我在我的 funcionat 组件中使用它
const MyFuncComp = () => {
const sum = useSum(1, 2);
return (
<div>{sum}</div>
);
}
Run Code Online (Sandbox Code Playgroud)
在测试用例中,我有这样的
describe('Testing MyFuncComp', () => {
const myFuncComp = mount(<MyFuncComp />);
it('should have value of sum', () => {
const expected = '3';
const received = myFuncComp.find('div').text();
expect(received).toEqual(expected);
});
}) …Run Code Online (Sandbox Code Playgroud)