React native 如何在React Native中使用酶测试openDrawer?
我在英语考试中遇到了一些问题。我用的是酶,我试着点击打开抽屉的按钮。我也在使用react导航,但是当我尝试时,会出现以下问题: TypeError:navigation.openDrawer不是函数React native 如何在React Native中使用酶测试openDrawer?,react-native,jestjs,react-navigation,enzyme,React Native,Jestjs,React Navigation,Enzyme,我在英语考试中遇到了一些问题。我用的是酶,我试着点击打开抽屉的按钮。我也在使用react导航,但是当我尝试时,会出现以下问题: TypeError:navigation.openDrawer不是函数 const props = { navigation: { openDrawer: jest.fn(), }, }; const wrapper = shallow(<HeaderButton {...props} />); it('Dra
const props = {
navigation: {
openDrawer: jest.fn(),
},
};
const wrapper = shallow(<HeaderButton {...props} />);
it('DrawerMenu is Called', () => {
expect(
wrapper
.find('AnimatedComponent')
.props()
.onPress(),
).toHaveBeenCalled();
});
const HeaderButton = (navigation: NavigationParams) => (
<TouchableRipple
onPress={() => navigation.openDrawer()}
>
<Icon
name="menu"
size={Platform.OS === 'ios' ? 20 : 24}
color="white"
style={{ marginHorizontal: 16 }}
/>
</TouchableRipple>
);
const props={
导航:{
openDrawer:jest.fn(),
},
};
常量包装器=浅();
它('称为抽屉菜单',()=>{
期待(
包装纸
.find('AnimatedComponent')
.props()
.onPress(),
).tohavebeincall();
});
const HeaderButton=(导航:NavigationParams)=>(
navigation.openDrawer()}
>
);
[链接至代码:
谢谢。问题是
头部按钮
应该使用道具
(它具有导航
属性),而不是直接使用导航
这应该起作用:
const HeaderButton=({navigation})=>(
或者,如果您愿意:
const HeaderButton = (props) => (
<TouchableRipple
onPress={props.navigation.openDrawer}
>
const HeaderButton=(道具)=>(