バックボーンを使用してGooglePlacesJSAPIにアクセスするためのJSを構築しています。これまでのところ、私はモデルのバインディングに固執しています。
「fetch」を無効にして、GoogleAPIを使用できるようにしました。Googleへの呼び出しは問題なく機能します。
var Places = Backbone.Collection.extend({
model: Place,
fetch: function(options) {
// SNIPPET //
service = new google.maps.places.PlacesService(map);
service.nearbySearch(request, this.googlePlaceCallback);
// SNIPPET //
},
parse: function(response){
// nerver called
},
googlePlaceCallback: function(results, status) {
// I do something here and is properly called after Google returns a response
}
});
また、非常に単純なビューを定義しました。
var MapView = Backbone.View.extend({
initialize: function() {
this.model = new Places();
this.model.bind("reset", this.render, this);
this.model.fetch();
},
render : function () {
console.log( this.model.toJSON() );
}
});
「モデル」にデータを入力する方法がわかりません。Googleは期待どおりの結果を返しますが、バックボーンモデルに設定できます。'googlePlaceCallback'でやらなければならないことがありますか?Googleの結果がすべて興味深いわけではないので、おそらく「解析」をオーバーライドする必要があります。