如何解决获取导航器地理位置并检查导航器权限将变量传递给 then() 函数
我试图在这里找到答案,但经过长时间的尝试和混乱,我想向您寻求帮助。
我有一个获取用户设备地理定位的功能:
function getGeo() {
navigator.geolocation.getCurrentPosition(position_success,position_failure,{maximumAge:60000,timeout: 2000});
}
如果导航器失败,我想检查用户是否在其设备上阻止/拒绝本地化:
function position_failure(error) {
navigator.permissions.query({name:'geolocation'}).then(function(result) {
var permission_status = 'general';
if (result.state == 'denied') {
permission_status = 'denied';
}
display_notification(error,permission_status);
});
}
重点是,我不能将 error
变量传递给 display_notification
函数,它说它是 undefined
。我尝试弄乱 bind
、then
,我知道它与异步有关,但很长时间后我无法修复它。 display_notification
函数很大,我不想把整个函数放在这个 then()
中。有人可以给我一些提示,或者可能有不同的方法来做到这一点?谢谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。