假设我有这个简单的 React (TypeScript) 组件:
function Header(): JSX.Element {
const initialItemIndex = useInitialItemIndex();
const [currentItem, setCurrentItem] = useState(initialItemIndex);
function onChangeFunc(event: Event, itemNum: number): void {
setCurrentItem(itemNum);
}
return (
<div>
<Tabs value={currentTab} onChange={onChangeFunc}>
<Tab label="A" />
<Tab label="B" />
</Tabs>
</div>
);
}
我想测试(Jest,TypeScript)Tabs.onChange
正在调用onChangeFunc
. 我应该如何测试它?就像是:
const wrapper = shallow(<Header />);
const spyFunc = jest.spyOn(Header, 'onChangeFunc');
wrapper.find('Tabs').simulate('change');
expect(spyFunc).toBeCalled();
关于 spyOn 中的第二个参数,我遇到了错误:
TS2345: Argument of type '"onChangeFunc"' is not assignable to parameter of type 'never'.
我究竟做错了什么?