使用 React Navigation 测试 React Native 的问题

时间:2021-05-31 19:09:40

标签: react-native react-navigation enzyme

我在应用中使用 React 导航作为我的路由器,但我想对我的 WelcomeScreen 组件进行单元测试。当我尝试运行一个简单的测试时,我收到此错误:

我正在使用 Enzyme,但尝试过测试库,结果也是如此。

Couldn't find a navigation object. Is your component inside a screen in a navigator?

      12 |
      13 | const WelcomeScreen = () => {
    > 14 |     const navigation = useNavigation()
         |                        ^
      15 |
      16 |     return (
      17 |         <Screen>

我该如何解决这个问题? 谢谢。

编辑:(添加导航组件)

const Stack = createStackNavigator()
const { Navigator, Screen } = Stack

const Navigation = () => {
    return (
        <NavigationContainer>
            <Navigator initialRouteName={'Welcome'} headerMode="none">
                <Screen name="Welcome" component={WelcomeScreen} />
                <Screen name="ListCats" component={ListScreen} />
                <Screen name="AddCat" component={AddScreen} />
                <Screen name="EditCat" component={EditScreen} />
                <Screen name="Cat" component={CatScreen} />
            </Navigator>
        </NavigationContainer>
    )
}

export default Navigation

0 个答案:

没有答案
相关问题