@kun921

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

変数から値を参照できない

Q&A

Closed

解決したいこと

vue2-google-mapsライブラリを用いてmapをクリックすると、イベントからクリックした場所の緯度経度を取得したいが、イベントから緯度経度の情報を個別に参照できない。

発生している問題・エラー

html部分

<GmapMap
      map-type-id="roadmap"
      :center="maplocation"
      :zoom="zoom"
      :style="styleMap"
      :options="mapOptions"
      @click="clickEvent($event)"
    >

js部分

    clickEvent(event) {
      this.clickPlace1 = event
      this.clickPlace2 = event.latLng
      this.clickPlaceLat = event.latLng.lat
    },

変数の取得結果(clickPlace1,clickPlace2,clickPlaceLat)

{ "latLng": { "lat": 35.68220214651617, "lng": 139.76767069941678 }, "domEvent": { "isTrusted": false }, "pixel": { "x": 711, "y": 265 }, "sb": { "x": 227.39034360847415, "y": 100.80632410575821 } }

(35.68220214651617, 139.76767069941678)

function(){return e}

試してみたこと

  • clickPlace2を分離(substr()) ⇒ str型ではない
clickPlace2.substr(1,15)
>> clickPlace2.substr is not a function
  • clickPlace2の型確認
typeof clickPlace2
>> object
  • clickPlace2のインデックス指定
clickPlace2[0]
>> 
typeof clickPlace2[0]
>> undefined
0 likes

1Answer

Comments

  1. @kun921

    Questioner

    clickPlace2からlat,lonを個別に取り出したいのですが、そこがうまくいかないです。。
  2. const e = { "latLng": { "lat": 35.68220214651617, "lng": 139.76767069941678 }, "domEvent": { "isTrusted": false }, "pixel": { "x": 711, "y": 265 }, "sb": { "x": 227.39034360847415, "y": 100.80632410575821 } };
    const lat = e.latLng.lat;
    const lng = e.latLng.lng;
    console.log("lat: "+lat);
    console.log("lng: "+lng);
  3. @kun921

    Questioner

    ご回答ありがとうございます。

    様々な方法で検証したところ

    clickPlace2.lat()

    で取得できました。見た目ではただのオブジェクトに見えますが、getterのような参照の仕方でした、、

Your answer might help someone💌