Не удается разрешить модуль ‘react-navigation-stack’, не удается найти решение

#javascript #reactjs #react-native

#javascript #reactjs #react-native

Вопрос:

Не уверен, что происходит, но моя навигация по реакции не работает на react native.

Я установил npm react-navigation-stack и npm install —save react-native-gesture-handler react-native-reanimated react-native-screens.

Это выдает мне эту ошибку:

 Unable to resolve module 'react-navigation-stack' from 'routes/homeStack.js': react-navigation-stack could not be found within the project or these directories: ../node_modules
 

У меня есть это в моей папке маршрута:

 import { createStackNavigator } from "react-navigation-stack";
import { createAppContainer } from "react-navigation";
import Home from "../screens/home";
import Decision from "../screens/decision";

const screens = {
  Home: {
    screen: Home,
  },
  Decision: {
    screen: Decision,
  },
};

const HomeStack = createStackNavigator(screens);

export default createAppContainer(HomeStack);
 

Затем в моем основном компоненте приложения у меня есть:

 import React, { useState } from "react";
import { StyleSheet, View, Text } from "react-native";
import * as Font from "expo-font";
import Home from "./screens/home";
import { AppLoading } from "expo";
import Navigator from "./routes/homeStack";

const getFonts = () =>
  Font.loadAsync({
        "poppins-regular": require("./assets/fonts/Poppins-Regular.ttf"),
        "poppins-bold": require("./assets/fonts/Poppins-Bold.ttf"),
  });

export default function App() {
  const [fontsLoaded, setFontsLoaded] = useState(false);

  if (fontsLoaded) {
    return < Navigator />;
  } else {
    return (
      <AppLoading startAsync={getFonts} onFinish={() => setFontsLoaded(true)} />
    );
  }
}
 

Ответ №1:

Какова ваша версия react-navigation? -> использовать @react-navigation / stack для версии 5

Комментарии:

1. Да, это сработало. Спасибо! По какой-то причине я использовал старую версию