Saya menggunakan geolokasi tetapi saya mendapatkan kesalahan: "tidak terdefinisi bukan objek (mengevaluasi 'navigator.geolocation.getCurrentPosition') Menurut dokumentasi, tidak perlu mengimpor Geolokasi menggunakan reaksi asli versi 0.60 atau lebih tinggi.

Versi: react-native-cli: 2.0.1 react-native: 0.60.4

import React, { Component } from "react";
import {
  StyleSheet,
  Text,
  View,
  Alert,
  TouchableOpacity
} from "react-native";


export default class App extends Component {
  state = {
    location: null
  };

  findCoordinates = () => {
    navigator.geolocation.getCurrentPosition(
      position => {
        const location = JSON.stringify(position);
        this.setState({ location });
      },
      error => Alert.alert(error.message),
      { enableHighAccuracy: true, timeout: 20000, maximumAge: 1000 }
    );
  };

  render() {
    return (
      <View style={styles.container}>
        <TouchableOpacity onPress={this.findCoordinates}>
          <Text style={styles.text}>Find My Coords?</Text>
          <Text>Location: {this.state.location}</Text>
        </TouchableOpacity>
      </View>
    );
  }
}
0
Rodrigo Murai 7 Agustus 2019, 13:43

1 menjawab

Jawaban Terbaik

Saya menghadapi masalah yang sama dan menurut saya dari 0.60 ke atas navigator tidak didukung sehingga Anda harus menggunakan Geolokasi

1
Community 20 Juni 2020, 09:12