元素类型无效:期望字符串(对于内置组件)或类/函数(对于复合组件)

时间:2017-11-27 22:49:32

标签: javascript react-native

我正在尝试在我的本机应用程序中使用导航,但是收到错误。

这是我的index.js文件:

<div class="logo_wrapper" style="width: 1921px;">
    <div class="q_logo">
        <a itemprop="url" href="http://www.ladidabeauty.com/" style="height: 80px;">
                <img itemprop="image" class="normal" src="http://www.ladidabeauty.com/wp-content/uploads/la-di-da-beauty-logo-gray-text-white-background.png" alt="Logo" style="height: 100%;">
                <img itemprop="image" class="light" src="http://www.ladidabeauty.com/wp-content/uploads/la-di-da-beauty-logo-gray-text-white-background.png" alt="Logo" style="height: 100%;">
                <img itemprop="image" class="dark" src="http://www.ladidabeauty.com/wp-content/uploads/la-di-da-beauty-logo-gray-text-white-background.png" alt="Logo" style="height: 100%;">
                <img itemprop="image" class="sticky" src="http://www.ladidabeauty.com/wp-content/uploads/la-di-da-beauty-logo-gray-text-white-background.png" alt="Logo" style="height: 100%;">
                <img itemprop="image" class="mobile" src="http://www.ladidabeauty.com/wp-content/uploads/la-di-da-beauty-logo-gray-text-white-background.png" alt="Logo" style="height: 100%;">
        </a>
    </div>
 </div>

我收到以下错误:

import React, { Component } from 'react'
import { AppRegistry } from 'react-native';
import App from './App';

class ChatNow extends Component {
    render() {
        return (
            <App />
        )
    }
}

AppRegistry.registerComponent('ChatNow', () => App);

我也试过注释掉类,只是像创建基本index.js文件那样运行它,但是我得到了同样的错误。

在这种情况下,app.js文件旨在实现Navigator组件,不推荐使用本机反应,但是通过反应本地弃用的自定义组件重新实现。

这是我的app.js代码:

Invariant Violation: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object

2 个答案:

答案 0 :(得分:0)

您好我相信问题是您没有将顶级组件传递给AppRegistry.registerComponent,而不是App应该是ChatNow,但是我个人使用它的方式,如果ChatNow没有做任何你可能只是摆脱它并做到这一点:

import { AppRegistry } from 'react-native';
import App from './App';

AppRegistry.registerComponent('ChatNow', () => App);

我希望它有所帮助,我试着留下评论,但我没有做过代表。

答案 1 :(得分:0)

好的,这是最蠢的事情......

结果导致问题的代码行是:

import Navigator from 'react-native-deprecated-custom-components';

应该是:

import { Navigator } from 'react-native-deprecated-custom-components';

糟糕。