【问题标题】:Error: undefined is not a function react-native错误:未定义不是反应原生的函数
【发布时间】:2019-03-13 10:27:26
【问题描述】:

我正在编写我的第一个 React-native 应用程序,我在执行代码时收到以下错误消息,

App.js:

import React, { Component } from 'react';
import { StyleSheet, Text, TextInput, View} from 'react-native';
import { StackNavigator } from 'react-navigation';
import Login from './App/components/Login.js';

const Application = StackNavigator({
  Home: { screen: Login },
}, {
    navigationOptions: {
      header: false,
    }
  });

export default class App extends Component {
render() {
    return (
       <Application />
    );
  }
}

登录.js:

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

export default class Login extends Component{
    render(){
        return(
            <Text>Test</Text>
        );
    }
}

【问题讨论】:

  • 您使用的是哪个版本的react-navigation
  • @Andrew 如何检查?因为我只是运行命令npn install --save react-navigation。我在 1 小时前安装了它。表示它是最新的。
  • 那么您的问题是您正在学习旧教程,因为 StackNavigator 在 v2 中已被弃用。由于您可能使用的是 v3,因此您需要确保使用正确的功能等,请查看文档以获取更多详细信息。
  • @Andrew 感谢您指出我使用的是旧教程。从现在开始我将使用最新的。谢谢。

标签: javascript android react-native react-navigation


【解决方案1】:

您必须导出 createAppContainer 并且 StackNavigator 已被弃用,使用 createStackNavigator
试试这个:

import React, { Component } from 'react';
import { StyleSheet, Text, TextInput, View} from 'react-native';
import { createStackNavigator, createAppContainer } from "react-navigation";
import Login from './App/components/Login.js';

const Application = createStackNavigator({
  Home: { screen: Login },
}, {
    navigationOptions: {
      header: false,
    }
  });

class App extends Component {
render() {
    return (
       <Application />
    );
  }
}
export default createAppContainer(Application);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-30
    相关资源
    最近更新 更多