如何使用useeffect获取坐标?

时间:2020-09-28 10:02:39

标签: reactjs

如何使用useeffect获取坐标?我一无所获,我在做什么错了?

const [position, setPosition] = useState<any>(null);
        
    useEffect(() => {
      (async () => {
        navigator.geolocation.getCurrentPosition((position) => {
        const { longitude, latitude } = position.coords;
        console.log(longitude, latitude);
       });
      })();
    }, []);

1 个答案:

答案 0 :(得分:0)

地理位置API是支持浏览器所固有的。因此,您可以删除async关键字。

 const [position, setPosition] = useState(null);
        
    useEffect(() => {
      (() => {
        navigator.geolocation.getCurrentPosition((position) => {
        //const { longitude, latitude } = position.coords;
        setPosition(position.coords)
       });
      })();
    }, []);

然后返回position状态。您也可以console.log()