反应本机基础吐司错误

gal*_*lgo 1 react-native native-base

我已经设置了以下React Native App,并且正在尝试使用Native Base中的Toast组件:

app.js

import React, {Component} from 'react';
import {AppRegistry} from 'react-native';
import { Root } from "native-base";
import {StackNavigator} from 'react-navigation';
import MainView from './assets/screens/MainView';
import ConfigView from './assets/screens/ConfigView';

export default class myApp extends Component {

render() {
  return (
    <Root>
    <AppNavigator />
  </Root>
  );
}
}
const Screens = StackNavigator({
  Main: {screen: MainView},
  Config: {screen: ConfigView}
})

AppRegistry.registerComponent('myApp', () => Screens);
Run Code Online (Sandbox Code Playgroud)

MainView.js(简体)

import React, {Component} from 'react';
import { StyleProvider, Card, CardItem, Left, Right, Body, Icon, Toast, Header, Fab } from 'native-base';
import {StackNavigator} from 'react-navigation';

export default class MainView extends Component {
....
  showError = (msg, err) => {
    console.log("[ERROR]", err);
    Toast.show({
      text: msg,
      position: this.state.toastPosition,
      buttonText: this.state.toastErrorBtn
    });
  }
....
}
Run Code Online (Sandbox Code Playgroud)

我已经尝试了几种方法,但是不断出现此错误:

错误捕获

zar*_*ode 6

您的应用应以渲染myApp组件开头,如下所示: AppRegistry.registerComponent('myApp', () => myApp);

在内部myApp,应呈现Screens不是的应用程序导航器AppNavigator,这就是您命名的方式。

这是您的app.js外观:

import React, { Component } from 'react';
import { Root } from "native-base";
import { StackNavigator } from "react-navigation";
import MainView from './assets/screens/MainView';
import ConfigView from './assets/screens/ConfigView';
import {AppRegistry} from 'react-native';

export default class myApp extends Component {

    render() {
      return (
        <Root>
            <Screens />
        </Root>
      );
    }
}
const Screens = StackNavigator({
    Main: {screen: MainView},
    Config: {screen: ConfigView}
})

AppRegistry.registerComponent('myApp', () => myApp);
Run Code Online (Sandbox Code Playgroud)