探索React Native社区的Geolocation模块:精准定位的力量
import React, { useEffect, useState } from 'react';
import { Text, View, StyleSheet } from 'react-native';
export default function App() {
const [location, setLocation] = useState(null);
useEffect(() => {
navigator.geolocation.getCurrentPosition(
(position) => {
const latitude = position.coords.latitude;
const longitude = position.coords.longitude;
setLocation({ latitude, longitude });
},
(error) => console.error(error),
{ enableHighAccuracy: true, timeout: 20000, maximumAge: 1000 }
);
}, []);
if (!location) {
return (
<View style={styles.container}>
<Text>正在获取位置...</Text>
</View>
);
}
return (
<View style={styles.container}>
<Text>
纬度: {location.latitude},经度: {location.longitude}
</Text>
</View>
);
}
const styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
},
});
这段代码使用React Native的navigator.geolocation
API来获取用户的当前位置。它展示了如何使用useState
和useEffect
来处理状态,以及如何在获取位置时使用高精度选项来提高定位的准确性。同时,它还展示了如何在获取位置成功后更新组件的状态,并在组件中显示位置信息。
评论已关闭