React Native-放置地理侦听器的正确位置

时间:2018-06-27 05:59:01

标签: react-native

我有此功能可获取组件中的当前位置。我想添加 watchPosition()侦听器,以便知道用户要去哪里。

但是,我的应用程序有多个需要地理数据的屏幕/组件。我可以知道有没有一个地方,该地方不会被卸下,并且即使在使用react-native-navigation切换到其他屏幕时也可以连续运行?

如果在需要它们的每个组件中使用此功能,都会有问题吗?

放置这些听众的最佳实践是什么?

getLocationAsync = async () => {
    Permissions.request("location")
      .then(response => {
        if (response === "authorized") {
          navigator.geolocation.getCurrentPosition(position => {
            store.dispatch({
              type: 'CURRENT_LOCATION',
              latitude: position.coords.latitude,
              longitude: position.coords.longitude
            })
          })

          this.setState({ locationPermission: true })
          this.setState({ isReady: true })
        } else {
          this.setState({
            errorMessage: "Permission to access location was denied"
          })
        }
      })
      .catch(err => console.log(err))
  }

0 个答案:

没有答案