繁体   English   中英

如何将数据存储在Javascript ES6范围之外的变量中

[英]How to store data in variable that is out of scope in Javascript ES6

我是ES6的新手。 我面临将数据存储在超出范围的变量中的问题。我创建了按钮事件并将其与getLocation()关联以查找用户位置,但是我无法找到更新超出范围的lon,lat变量的方法。 波纹管是代码:

lon: any;
lat: any;
getLocation() {
    var lat;
    var lon;
    navigator.geolocation.getCurrentPosition(function(d) {
        lat = d.coords.latitude.toFixed(2);
        lon = d.coords.longitude.toFixed(2);
        console.log(this.lat);
        console.log(this.lon);

    });

}
Update(lat: any, lon: any) {
    this.lat = lat;
    this.lon = lon;
}
lon: any;
lat: any;
getLocation() {
    var self = this;
    navigator.geolocation.getCurrentPosition(function(d) {
        self.lat = d.coords.latitude.toFixed(2);
        self.lon = d.coords.longitude.toFixed(2);
        console.log(self.lat);
        console.log(self.lon);
    });
}

您需要保持类变量不变,而您只需要更新它们即可。 当您创建var lonvar lan您正在创建方法变量并将值保留在方法内。 因此,它将不会更新类变量。

阅读更多: ES6类中的成员变量

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM