我在OS X上使用React Native,并使用Deco IDE进行编码。
我在项目中保存时在模拟器中出现Super expression must either be a null or a function, not undefined
错误。
我的主要问题似乎来自以下在线教程,这些教程似乎与现在使用的语法不同。不幸的是,网上的人并没有列出他们的版本。例如,他们似乎遗漏了大量的逗号,而我的文件却要求它。
这里是我编辑的仅有的两个文件的代码......
index.ios.js:
import React, { Component } from 'react';
import {
AppRegistry,
StyleSheet,
Text,
View
} from 'react-native';
import ViewContainer from './app/components/ViewContainer';
class Project extends Component {
render() {
return (
<ViewContainer>
<Text>{'Hello from inside ViewContainer'}</Text>
</ViewContainer>
);
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#00a0f0',
},
});
AppRegistry.registerComponent('Project', () => Project);
ViewContainer.js文件:
import { Component, View } from 'react-native';
class ViewContainer extends Component {
render() {
return (
<View style={styles.viewContainer}>
{this.props.children}
</View>
);
}
}
const styles = React.Stylesheet.create({
viewContainer: {
flex: 1,
flexDirection: 'column',
justifyContent: 'flex-start',
alignItems: 'stretch',
},
});
module.exports = ViewContainer;
答案 0 :(得分:2)
在 ViewContainer 组件中将其更新为:
import React, { Component } from 'react';
import { View, StyleSheet } from 'react-native';
class ViewContainer extends Component {
render() {
return (
<View style={styles.viewContainer}>
{this.props.children}
</View>
);
}
}
const styles = StyleSheet.create({
viewContainer: {
flex: 1,
flexDirection: 'column',
justifyContent: 'flex-start',
alignItems: 'stretch',
},
});
module.exports = ViewContainer;
1-导入React并从反应中反应导入组件
2- StyleSheet 中的拼写错误应该是UpperCase,并从react-native
导入