class 中的 Ionic 基本功能未完全执行

Ionic basic function inside class is not executing fully

  calculate_distance(lat1: number, lat2: number, long1: number, long2: number) {
    console.log("Inside getting calculate_distance");
    console.log(lat1);
    console.log(lat2);
    console.log(long1);
    console.log(long2);
    let p = 0.017453292519943295;    // Math.PI / 180
    let c = Math.cos;
    let a = 0.5 - c((lat1 - lat2) * p) / 2 + c(lat2 * p) * c((lat1) * p) * (1 - c(((long1 - long2) * p))) / 2;
    let dis = (12742 * Math.asin(Math.sqrt(a))); // 2 * R; R = 6371 km
    return dis.toFixed(2);
  }

在其他函数中调用这个函数,我没有得到距离值。

我刚刚在我的函数中添加了一个承诺 return 类型。这样它将 return 我的价值。

calculateDistance(lat1: number, lat2: number, long1: number, long2: number):Promise<any> {
    console.log("Inside getting calculate_distance");
    console.log(lat1);
    console.log(lat2);
    console.log(long1);
    console.log(long2);
    let p = 0.017453292519943295;    // Math.PI / 180
    let c = Math.cos;
    let a = 0.5 - c((lat1 - lat2) * p) / 2 + c(lat2 * p) * c((lat1) * p) * (1 - c(((long1 - long2) * p))) / 2;
    let dis = (12742 * Math.asin(Math.sqrt(a))); // 2 * R; R = 6371 km
    return dis.toFixed(2);
  }

并像这样调用 calculateDistance

  this.calculateDistance(this.my_lat, this.proj_lat, this.my_long, this.proj_long).then(result=>{
    this.distance = String(result)
  })