Android 为什么我得到的Typeerror超级表达式必须为null或函数?
所以我上周刚开始学习React Native,尝试并学习开发应用程序。我一直在学习我的课程,在我尝试创建一个新组件之前,它一直进行得很顺利。我已经把这一课重读了3遍,试图找出我的错误,但我似乎看不出代码之间有什么区别。请原谅我的业余错误,不管它在哪里。主app.js文件包含以下内容:Android 为什么我得到的Typeerror超级表达式必须为null或函数?,android,reactjs,react-native,components,Android,Reactjs,React Native,Components,所以我上周刚开始学习React Native,尝试并学习开发应用程序。我一直在学习我的课程,在我尝试创建一个新组件之前,它一直进行得很顺利。我已经把这一课重读了3遍,试图找出我的错误,但我似乎看不出代码之间有什么区别。请原谅我的业余错误,不管它在哪里。主app.js文件包含以下内容: import React from 'react'; import { StyleSheet, Text, View, Platform, Image, ImageBackground } from 'react-
import React from 'react';
import { StyleSheet, Text, View, Platform, Image, ImageBackground } from 'react-native';
import {Button} from 'native-base';
import Landing from './src/Landing'
import { render } from 'react-dom';
var myBackground = require('./assets/icons/landing.jpg');
export default class App extends React.Component() {
render() {
return (
<View style={styles.container}>
<Landing />
</View>
);
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
marginTop: Platform.OS === "android" ? 50 : 0
},
});
从“React”导入React;
从“react native”导入{样式表、文本、视图、平台、图像、图像背景};
从“本机基”导入{Button};
从“./src/Landing”导入着陆
从'react dom'导入{render};
var myBackground=require('./assets/icons/landing.jpg');
导出默认类App扩展React.Component(){
render(){
返回(
);
}
}
const styles=StyleSheet.create({
容器:{
弹性:1,
marginTop:Platform.OS==“android”?50:0
},
});
我的组件代码是:
import React from 'react';
import {View, Text, Image, StyleSheet} from 'react-native';
import {Button} from 'native-base';
var myBackground = require('../assets/icons/landing.jpg');
class Landing extends React.Component {
render() {
return(
<View>
<ImageBackground style={ styles.imgBackground } source={myBackground}>
<View style={styles.viewStyle}>
<Text style={styles.titleStyle}>Welcome to PokeSearch</Text>
<Button block={true} style={styles.buttonStyle} onPress={()=>{}}>
<Text style={styles.buttonText}>Start Searching for Pokemon!</Text>
</Button>
</View>
</ImageBackground>
</View>
)
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
marginTop: Platform.OS === "android" ? 50 : 0
},
imgBackground: {
width: '100%',
height: '100%',
flex: 1
},
viewStyle: {
flex: 1,
flexDirection: 'column',
justifyContent: "center",
alignItems: "center"
},
titleStyle: {
fontSize: 30,
color: 'red',
alignItems: 'center',
},
buttonStyle: {
margin: 10
},
buttonText: {
color: 'red'
},
});
export default Landing;
从“React”导入React;
从“react native”导入{视图、文本、图像、样式表};
从“本机基”导入{Button};
var myBackground=require('../assets/icons/landing.jpg');
类扩展React.Component{
render(){
返回(
欢迎来到PokeSearch
{}}>
开始搜索口袋妖怪!
)
}
}
const styles=StyleSheet.create({
容器:{
弹性:1,
marginTop:Platform.OS==“android”?50:0
},
IMG背景:{
宽度:“100%”,
高度:“100%”,
弹性:1
},
视图样式:{
弹性:1,
flexDirection:'列',
辩护内容:“中心”,
对齐项目:“中心”
},
标题样式:{
尺寸:30,
颜色:“红色”,
对齐项目:“居中”,
},
按钮样式:{
差额:10
},
按钮文字:{
颜色:“红色”
},
});
导出默认着陆;
任何帮助都将不胜感激,我似乎找不到哪里出错了。。。
以下是emulator中的完整错误:
提前谢谢 将
导出默认类应用程序扩展React.Component()
更改为导出默认类应用程序扩展React.Component
,类组件中不需要括号。谢谢您排除了错误,但现在我在命令行中遇到了这个错误:在finishClassComponent中的render-node\U modules\react-native\Libraries\Renderer\implementations\ReactNativeRenderer-dev.js:13042:21中找不到变量:ImageBackground*src\Landing.js:10:12。。。。但是我没有将imagebackground设置为变量,它只是一个图像标记,所以我不确定它为什么会被标识为变量…您没有将其导入到着陆组件中。从库中导入它(从'react native'导入{ImageBackground})@ShLuBsTeR,错误可能并不总是明确地告诉您发生了什么,因为react库开发人员不容易猜测用户会犯的所有类型的错误。是的,谢谢,我现在几乎完全修复了它。按钮和文本现在显示,只是背景图像没有显示。对不起,我是一个开发人员,已经脱离实践太久了,所以我犯了愚蠢的错误。一年半前我被解雇了,然后我的电脑出了问题,所以我刚开始重新开发,没有任何错误,尽管我将图像背景设置为,但我不认为我会花很多精力来修复它,其他一切似乎都很好,所以我将继续学习教程,谢谢你的帮助,非常感谢!