首页 > 解决方案 > 未定义不是函数(在'...(0,_reactNavigation.StackNavigator)...'附近)

问题描述

我正在做一个本地反应的研究项目(天气应用程序)。我正在使用反应导航 v4。它给出了上述错误。请任何人帮助解决这个问题。

//Index.js

import React from "react";
import { AppRegistry } from 'react-native';
import App from './App';
import { name as appName } from './app.json';
import { createStore, applyMiddleware } from 'redux';
import reducer from "./reducers";
import { Provider } from 'react-redux';
import thunk from 'redux-thunk';

import { StackNavigator } from 'react-navigation';
import WeatherDetails from './screens/WeatherDetails';
import CityLists from './screens/CityLists';

const Navigation = StackNavigator({
  WeatherDetails: { screen: WeatherDetails },
  CityLists: { screen: CityLists }
});

const store = createStore(reducer, applyMiddleware(thunk));

const wrapper = () => {
  return (
    <Provider store={store}>
      <Navigation />
    </Provider>
  );
}

AppRegistry.registerComponent(appName, () => wrapper);

标签: react-nativereact-navigationstack-navigator

解决方案


react-navigationv(4.0) 文档中所述,您必须StackNavigator单独安装。所以首先安装StackNavigator

npm install react-navigation-stack --save

createStackNavigator然后从导入react-navigation-stack

import { createStackNavigator } from 'react-navigation-stack';

现在,创建导航:

const Navigation = createStackNavigator ({
  WeatherDetails: { screen: WeatherDetails },
  CityLists: { screen: CityLists }
});

推荐阅读