错误很简单。我从浏览器获取经度和纬度并打印正确的值,然后我需要将此变量传递给视图,以便将值放入变量中。我打印变量并返回null。
我使用Angular 8。
代码
long: number;
lat: number;
constructor() {}
ngOnInit() {
navigator.geolocation.getCurrentPosition(function(location) {
this.lat = location.coords.latitude;
console.log(this.lat); //RETURN NULL
this.long = location.coords.longitude;
});
所以有人看到代码中有什么问题吗?
答案 0 :(得分:2)
问题是您使用普通的function
作为getCurrentPosition
的回调,因此this
的上下文不是类实例。您需要使用箭头功能:
navigator.geolocation.getCurrentPosition(location => {
this.lat = location.coords.latitude;
console.log(this.lat); //RETURN NULL
this.long = location.coords.longitude;
})