Использование GeoFirestore и Firestore Я пытаюсь разместить точки данных на карте вокруг пользователя.В данный момент выполняется тестирование с 1 точкой данных, чтобы получить начальный результат, но на карте ничего не отображается.
Карта по умолчанию центрирована на -> широта: 3.1467, долгота: 101.6119
Добавлены точки данныхк пожарному депо с широтой и долготой, имя - то же, что и выше -> широта: 3.1467, долгота: 101.6119
Карта показана вокруг правильного расположения по центруна моем текущем местоположении.- данные должны отображаться вокруг точки данных, хранящейся в Firestore.
import React, { Component } from 'react';
import { Text, View, StyleSheet } from 'react-native';
import { Constants, MapView, Permissions, Location, Status } from 'expo';
import * as firebase from "firebase";
require("firebase/firestore");
import { GeoFirestore } from "geofirestore";
// Fill in as appropriate
const FirebaseConfig = {
// Initialize Firebase
apiKey: xx
authDomain: xx
databaseURL: xx
projectId: xx
storageBucket: xx
messagingSenderId: xx
};
export default class LocationPermission extends Component {
state = {
region: { latitude: 3.1467, longitude: 101.6119, latitudeDelta: 0.0922, longitudeDelta: 0.0421 }
}
async componentDidMount() {
firebase.initializeApp(FirebaseConfig);
// Avoid deprecation warning
firebase.firestore().settings({
timestampsInSnapshots: true
});
// Get the user's location
let { status } = await Permissions.askAsync(Permissions.LOCATION);
let location = await Location.getCurrentPositionAsync({});
this.setState({
region: {
latitude: location.coords.latitude,
longitude: location.coords.longitude,
latitudeDelta: 0.01,
longitudeDelta: 0.01
}
});
// Just a simple collection with one or two premade items
const locationsRef = firebase.firestore().collection("/Airports");
const geoFirestore = new GeoFirestore(locationsRef);
const query = geoFirestore.query({
center: [this.state.region.latitude, this.state.region.longitude],
radius: 100
});
query.on("ready", () => this.setState({ loading: false }));
query.on("key_entered", (key, coords, distance) => {
console.log(key);
});
}
render() {
return (
<MapView
ref={map => (this._mapView = map)}
style={styles.map}
showsUserLocation={true}
showsPointsOfInterest={true}
followsUserLocation={true}
provider="google"
region={this.state.region}
></MapView>
);
}
}
export {LocationPermission}
const styles = StyleSheet.create({
map: {
flex: 1,
alignItems: 'center',
justifyContent: 'center',
paddingTop: Constants.statusBarHeight,
backgroundColor: '#ecf0f1',
}
});
На карте показано начальное положение карты по умолчанию, которое установлено для моего текущего местоположения / области
- поэтому не уверен, почему ничего не отображается на карте, когда все остальное отображается для местоположения пользователя и центра карты
Надеюсь, что кто-то может помочь в этом или направить меня к дальнейшему пониманию.