尝试在iOS模拟器上运行代码时出现以下错误。错误指出"元素类型无效:需要字符串(对于内置组件),但得到:未定义。您可能忘记从定义组件的文件中导出组件。
我在其他人的帖子中看到过同样的问题,他们需要在文件末尾添加"导出默认应用程序"或在类声明中使用"导出默认类"。
我正在遵循的教程是 https://medium.com/@gurusundesh/getting-started-with-react-native-mapview-5e0bd73aa602。可能是这篇文章很旧,从那以后反应原生已经发生了变化。
有关如何解决此问题的任何建议将不胜感激。
谢谢
/**
* Sample React Native App
* https://github.com/facebook/react-native
* @flow
*/
import React, { Component } from 'react';
import {
Platform,
StyleSheet,
Text,
View
} from 'react-native';
import { MapView } from 'react-native-maps';
const instructions = Platform.select({
ios: 'Press Cmd+R to reload,n' +
'Cmd+D or shake for dev menu',
android: 'Double tap R on your keyboard to reload,n' +
'Shake or press menu button for dev menu',
});
class App extends Component {
render() {
return (
<View style={styles.container}>
<MapView style={styles.map}
initialRegion={{
latitude:10,
longitude:20,
latitudeDelta:30,
longitudeDelta:40
}}
/>
</View>
);
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
backgroundColor: '#F5FCFF',
},
welcome: {
fontSize: 20,
textAlign: 'center',
margin: 10,
},
instructions: {
textAlign: 'center',
color: '#333333',
marginBottom: 5,
},
map: {
position: 'absolute',
top: 0,
bottom: 0,
left: 0,
right: 0,
}
});
export default App;
将导入的 MapView 更改为:
import MapView from 'react-native-maps';
根据文档:https://github.com/airbnb/react-native-maps