Angular 地理定位

标签 angular typescript

我陷入了地理位置。实际上它工作正常,但是当我使用 If else 时出现一些问题。当用户单击允许位置时,它可以工作,但是当用户单击不允许时,会出现问题,它不会插入到else中。这个DEMO作为引用。

组件

    ngOnInit() {
       this.getUserLocation();
    }

    getUserLocation() {
       if (navigator.geolocation) {
        navigator.geolocation.getCurrentPosition(position => {
            this.lat = position.coords.latitude;
            this.lng = position.coords.longitude;
          });
    }else {
       console.log("User not allow")

    }
}

最佳答案

@shayan ans 是获得您想要的结果的正确方法。我会稍微修改他的方法以满足您的期望。

尝试这样的事情

navigator.geolocation.getCurrentPosition(function(){
        alert('Location accessed')
},function(){
       alert('User not allowed')
},{timeout:10000})

关于 Angular 地理定位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60502097/

相关文章:

angular - 如何从另一个组件打开 ng bootstrap modals?

javascript - Angular:其中生命周期钩子(Hook)是组件可用的输入数据

javascript - Typescript 方法装饰器

javascript - 我无法在其他 Node 模块工作时导入其中一个 Node 模块

node.js - 如何将 Handlebars 文件复制到 dist 文件夹

angular - NgRx 对 switchMap 和 catchError 的影响 - 有人可以解释我的代码和 'correct' 代码之间可观察到的工作流的区别吗?

javascript - 对组件的@Input 进行严格的类型检查

Angular 2如何在ControlValueAccessor内部的控件上调用markAsDirty()

Angular Observable HttpInterceptor ForkJoin 不起作用

angular - Typescript 非空数组返回大小为零的长度