我已经尝试了很多时间在redux的react-native中使用地理位置,但是它显示的是美国位置,没有显示我的当前位置。有人可以帮助我吗?请在下面检查我的代码。
Reducer.js
let initialState = {
lng: 0,
lat: 0
}
export default function prayerTimes(state = initialState, action) {
switch (action.type) {
case GET_LOCATION:
return Object.assign({},
state,
{
lat: action.lat,
lng: action.lng
}
)
default:
return state;
}
}
Action.js
export function getLocation() {
return dispatch => {
navigator.geolocation.getCurrentPosition(
(position) => {
dispatch({
type: GET_LOCATION,
lat: position.coords.latitude,
lng: position.coords.longitude
});
},
(error) => { },
{ enableHighAccuracy: true, timeout: 20000, maximumAge: 60 * 60 * 24 },
);
};
}
Main.js
componentDidMount() {
const { getLocation } = this.props;
getLocation();
}
render() {
const { lng, lat } = this.props;
return (
<View>
<Text style={{color: 'white'}}>Latitude: {lat}</Text>
<Text style={{color: 'white'}}>Latitude: {lng}</Text>
</View>
);
}
}