0

CoffeeScript、Backbone.js、Google Maps APIを使用して、lat/lngを逆ジオコーディングしています

私は機能を持っています

  country: (origin, callback) ->
    @geocoder = new google.maps.Geocoder
    @geocoder.geocode(
        'latLng': origin,
        (results, status) => 
            if status is google.maps.GeocoderStatus.OK
              callback(result[6])
            else alert("Geocode was not successful for the following reason: " + status);
    )

私がこれを呼ぶとき、私は使用します:

@country(origin, (data) =>
   console.log(data.formatted_address)
)

ところで:

origin = new google.maps.LatLng(origin_lat, origin_lng)

これは機能しません、それはそれを呼んでさえいないようです。コールバック機能(data)がありますが、動作させることができません...

ありがとう

4

1 に答える 1

0

あなたの質問の全体的な文脈についてはわかりませんが、とにかくそれを突き刺します。

国の関数を定義した方法では、通常、オブジェクトまたはマップの一部になります。スタンドアロン機能が必要な場合は、次を試してください。

country = (origin, callback) ->
   ...

次に、それを呼び出すときに、に置き換え@country(...)てみてくださいcountry(...)

コメントに基づくと、ジオコードの呼び出しも間違っているように見えます。'latLng': originGeocoderRequestのインスタンスを作成し、ペアの代わりに渡す必要があります。残念ながら、私はGoogleスタイルのAPIをあまり使用していません。したがって、これがあなたの本当の質問である場合、私はあまり使用しません。

于 2012-06-09T17:57:30.813 に答える