【发布时间】:2019-05-03 18:07:24
【问题描述】:
我正在使用 react 在 localhost:3000 上获取地理位置。我看到另一个人在他们的本地主机上获取了地理位置坐标,但即使在 Chrome 上启用了允许位置访问,我也无法这样做。
我尝试在 react 中同时使用钩子和类语法。我启用了允许访问。我最终使用了一个 ip 地址 api 来获得一个大致位置,但是由于地理定位应该可以工作(至少这是我被告知的),我至少希望看到它工作,所以我可以使用 https 来实现它未来。错误日志甚至没有被触发,而前三个日志在组件安装时被触发。这是我尝试过的代码,我已经尽可能简单了:
const App = props => {
useEffect(() => {
console.log('hello')
console.log(navigator)
console.log(navigator.geolocation)
if ("geolocation" in navigator) {
navigator.geolocation.getCurrentPosition((position) => {
console.log(position)
}, (error) => {
console.log(error)
})
} else {
console.log('error')
}
}, [])
return (
<div>
<h3>Please Login.</h3>
</div>
)
}
export default App
我希望收到来自 googleapi 的回复。
编辑:
我添加了错误回调并打印出来:
消息:“'https://www.googleapis.com/' 的网络位置提供商:未收到响应。”
【问题讨论】:
标签: reactjs navigator w3c-geolocation