繁体   English   中英

不变违规:元素类型无效:预期为字符串或类/函数,但得到:对象

Invariant Violation: Element type is invalid: expected a string or a class/function but got: object

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我知道这个问题,但似乎我的问题有所不同(即我认为导入结构不正确)

这是我得到的错误。 提到的文件位于react-native库的深处,不幸的是,该消息不是非常有用。

ExceptionsManager.js:73在renderApplication.js:35处检查代码。

不变违规:元素类型无效:预期为字符串(对于内置组件)或类/函数(对于复合组件),但得到:对象。 ExceptionsManager.js:65

该错误位于:

 in RCTView (at View.js:71) in View (at AppContainer.js:102) in RCTView (at View.js:71) in View (at AppContainer.js:122) in AppContainer (at renderApplication.js:34) 

下面的index.js给了我错误, 但是如果我通过使用注释行而不是直接注册来显示我的组件,那么一切都会按预期进行。

index.js:

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

./src/App.js:

import React, { Component } from 'react';
import {Provider} from 'react-redux';
import { createStore, applyMiddleware, combineReducers, compose } from 'redux';
import { createLogger } from 'redux-logger'
import reducer from './reducers/index'
import AppContainer from './containers/AppContainer'
import {  Text,  View} from 'react-native';

const loggerMiddleware = createLogger({predicate: (getstate, action) => __DEV__});

function ConfigureStore(initialState){
   const enhancer = compose(
     applyMiddleware(loggerMiddleware)
   );

   return createStore(reducer,initialState, enhancer);
  }

const store = ConfigureStore({});

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

export const App= () =>(
  <Provider store={store}>
    <Test/>
  </Provider>
);
2 个回复

将您的代码更改为以下内容可以正常工作。

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

registerComponent似乎期望返回一个组件或无状态组件的函数,而不是返回组件(JSX)的内容。

这是导入问题。 当我使用时:在cart.js中const CartItem = require("./cart-item"); 在cart-item.js export default CartItem我确实有这个问题,但是当我更改import时:在import CartItem from "../cart/cart-item"; 一切正常!

2 不变违规:元素类型无效:预期为字符串或类/函数,但得到:未定义。

开发人员 救命。 我在下面收到此错误,我一直在尝试查找问题,但是却看不到它! 怎么了 它似乎源于从146到236的代码。 不变违规:元素类型无效:预期为字符串(对于内置&gt;组件)或类/函数(对于复合组件),但得到:&gt; undefined。 您可能忘记了从定义其的 ...

3 不变违规:元素类型无效:预期为字符串或类/函数,但得到:对象-可能发生Babel问题

我项目中的所有内容都可以正常工作,直到启动时所有内容随机崩溃。 我猜想这与babel有关,因为它正在进行第二个工作,现在却没有。 如您所见,该错误在我的应用程序的不同部分仍然存在。 需要注意的是它说“检查'SceneView'的渲染方法”,但是我没有SceneView。 我 ...

5 不变违规:元素类型无效:预期为字符串(内置组件)或类/函数(复合组件),但得到:对象

我在这里看到了很多有关import/export ,但是我不明白我的问题是什么,所以我发布了我的问题。 这是我的练习项目的完整配置和代码:(简体) 奇怪的是,如果我不使用&lt;Youtube /&gt;组件,则不会发生任何错误。 这就是为什么我认为我的设置没有问题的 ...

暂无
暂无

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

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