繁体   English   中英

React Native - 渲染没有返回任何内容

[英]React Native - Nothing was returned from render

我的应用程序存储在 /src/index.js 中,但我也有一个 /App.js 和一个 /index.js。

我不知道这些之间的区别,我认为这就是我得到这个错误的原因。

在此处输入图像描述

/index.js

import { AppRegistry } from 'react-native';
import App from './App';
AppRegistry.registerComponent('client', () => App);

/App.js

import App from './src/index';

export default App;

/src/index.js

import React from 'react';
import { AppRegistry } from 'react-native';
import { Provider, connect } from 'react-redux';
import { addNavigationHelpers } from 'react-navigation';

import Navigator from './routes/route';
import store from './store/configureStore';


const App = ({ dispatch, nav }) => {

    <Navigator
        navigation={addNavigationHelpers({
            dispatch,
            state: nav,
        })}
    />
};

const mapStateToProps = state => ({
    nav: state.nav,
});



const AppWithNavigation = connect(mapStateToProps)(App);

export default () => {

    <Provider store={store}>
        <AppWithNavigation />
    </Provider>

}

我使用 create react native package 来构建这个项目,然后尝试按照一些指南使用 redux 实现反应导航。

您的默认导出不返回任何内容:

export default () => {

    <Provider store={store}>
        <AppWithNavigation />
    </Provider>

}

要使用箭头函数返回JSX,您需要使用() => ( <JSX /> )或带花括号的等效项: () => { return ( <JSX /> ) }

export default () => (    
    <Provider store={store}>
        <AppWithNavigation />
    </Provider>
)

要么 :

export default () => {
    return (    
       <Provider store={store}>
           <AppWithNavigation />
       </Provider>
   )
}

你忘了return components

const App = ({ dispatch, nav }) => {
    return(
        <Navigator
            navigation={addNavigationHelpers({
                dispatch,
                state: nav,
            })}
        />
    )
};


export default () => {
    return(
        <Provider store={store}>
            <AppWithNavigation />
        </Provider>
    )
}

我没有提到这个

import React from 'react';

以及我其他屏幕文件中的所有其他react-native组件。

因为我是从 App.js 文件中的另一个文件调用我的屏幕组件,所以我也必须在该文件中导入 react 和 react-native 组件。

有很多原因,例如,如果您使用 function 组件或 class 组件。 如果它显示这种错误 Solve - Nothing was returned from render 反应中的错误,这意味着您忘记在 function 组件或 class 组件中添加返回

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM