元素类型无效:期望是字符串或类/函数,但得到的是:对象
Element type is invalid: expected a string or a class/function but got: object
我试图共享相同的代码库,所以我在index.js
文件中编写了我的代码,并且我在index.ios.js
和index.android.js
文件中放置了相同的代码。
这是index.ios.js
中的代码:
'use strict';
import React, { AppRegistry } from 'react-native';
import MYCLASS from './index';
AppRegistry.registerComponent('MYCLASS', () => MYCLASS);
以下是index.js
中的一些代码:
export default class MYCLASS extends Component {
render() {
return (
<View style={styles.container}>
<Text style={styles.title}>
my text
</Text>
</View>
);
}
}
你需要改变你导入React的方式。
查看其他答案的详细信息:https://stackoverflow.com/a/37415044/158525
我同意你需要修改React
的导入,但是它看起来并没有消除错误。根据我的测试,看起来模块绑定器在应用程序的根目录下有一个艰难的index.js
。如果你将该导入更改为:
import MYCLASS from './index.js';
,它将正常工作。其他任何(./
, ./index
)都将导致该错误。
我建议您将index.js
重命名为App.js
Main.js
等,并相应地更新导入语句。当您希望在有组织的名称空间(目录)下公开资源时,请使用index.js
。
相关文章:
- 创建对象函数原型和代码是错误的
- JavaScript模块模式-如何在使用对象/函数之前激发构造函数/init函数
- 如何从onclick字符串中引用javascript对象函数
- 更改对象函数仅用于示例
- javascript和jQuery的嵌套对象函数中的变量范围
- 将对象函数传递给请求动画帧时丢失对象引用
- 对象函数返回函数而不是值
- 使用onclick调用属性对象函数
- javascript拉斐尔对象函数传递
- 如何从onClick事件调用对象函数
- 可以't获取具有“t”的对象变量;这个“;由setTimeout()函数调用的对象函数中的属性
- 对象没有't继承父对象函数
- 调用父对象函数
- "这个“;对象函数内部的引用
- 将变量添加到对象函数调用的末尾
- 传单错误:对象函数没有方法'createIcon'在LayerGroup中创建自定义图标标记时
- TypeError:对象函数Object(){〔本机代码〕}没有方法'方法'
- 挖空 - 单击绑定到对象函数 - 范围问题
- 类型错误: 对象函数...没有方法“打开”
- JavaScript 对象函数