地理定位一直在请求允许

问题描述 投票:0回答:1

有什么办法可以只给一次权限吗?

const COORDINATION = "coords";

function saveCords(coordsOBJ){


    localStorage.setItem(COORDINATION,JSON.stringify(coordsOBJ));

}



function handleGeoError(position){
    console.log("Cant find position");
}

function handleGeoSuccess(position){
   // console.log(position);
   const latitude = position.coords.latitude;
   console.log(latitude);
   const longitude = position.coords.longitude;
   const coordsOBJ = {
       latitude,//latitude = latitude,
       longitude//longitude = longitude
   }
   saveCords(coordsOBJ);

}

function askForCoords(){

    navigator.geolocation.getCurrentPosition(handleGeoSuccess,handleGeoError);

}

function loadCoordinate(){
    const loadedCords = localStorage.getItem("COORDINATION");
    if(loadedCords === null)
    {
         askForCoords();
    }
}

function init(){
    loadCoordinate();
}
javascript html css geolocation
1个回答
0
投票

看起来你的代码中有一个错别字,你在COORDINATION上加了引号,但它是一个变量而不是字符串。

试着改一下。

const loadedCords = localStorage.getItem("COORDINATION");

改成:

const loadedCords = localStorage.getItem(COORDINATION);
© www.soinside.com 2019 - 2024. All rights reserved.