【问题标题】:React native android Undefined is not functionReact native android Undefined is not function
【发布时间】:2018-11-26 06:08:22
【问题描述】:

React 原生安卓:

当我从一个屏幕导航到下一个屏幕时

undefined 不是函数(评估 '(0, _reactNavigation.StackNavigator)({ SettingScreen: { screen: _settings.default }, HomeScreen: { screen: _Home.default } })')

App.js

import React, {Component} from 'react';
import { AppRegistry} from 'react-native';
import { Button } from 'react-native';
import {Navigation} from 'react-native'
import { StackNavigator } from 'react-navigation';

import Settings from './screens/Settings';
import Home from './screens/Home';

const AppNavigator = StackNavigator({
  SettingScreen: { screen: Settings },
  HomeScreen: { screen: Home }
});

export default class App extends Component<Props> {

    render() {
    return (
        <AppNavigator />
    );
  }
}

设置.js

import React, { Component } from 'react';
import { View, Text, Button } from 'react-native';

export class Settings extends Component {
  render() {
    return (
      <View>
        <Text>This is the Settings screen</Text>
        <Button onPress={() => this.props.navigation.navigate('HomeScreen')} title="Home"/>
      </View>
    )
  }
};

export default Settings;

Home.js

import React, { Component } from 'react';
import { View, Text } from 'react-native';

export class Home extends Component {
  render() {
    return (
      <View>
        <Text>This is the home screen</Text>
      </View>
    )
  }
}

export default Home

【问题讨论】:

    标签: android react-native


    【解决方案1】:
    1. 将您的 App.js 更新为以下内容。

      const App = createStackNavigator({ 主页:主屏幕, 简介:ProfileScreen, });

      导出默认createAppContainer(App);

    2. 去掉export default Settings这行;

    3. 删除行export default Home;

    【讨论】:

      【解决方案2】:

      请尝试如下更新的功能。

      const App = createStackNavigator({
      Home: {screen: HomeScreen},
      Profile: {screen: ProfileScreen},
      });
      

      【讨论】:

        【解决方案3】:

        请尝试以下更改。

        import { createStackNavigator } from "react-navigation";
        
        const AppNavigator = createStackNavigator(
         {
            SettingScreen: { screen: Settings },
            HomeScreen: { screen: Home }
          }
        )
        

        【讨论】:

          猜你喜欢
          • 2019-05-04
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-04-28
          • 1970-01-01
          • 2020-09-26
          • 1970-01-01
          • 2020-08-07
          相关资源
          最近更新 更多