当在谷歌自动填充地点中搜索以角度2下拉时,首先获得最近的地方

时间:2017-08-18 05:06:34

标签: angular google-maps google-location-services

我在角度2项目中使用谷歌自动填充位置,并在下拉列表中填充位置。 我有一个新的要求。如果用户在一个名为ABD的地方,当在下拉列表中进行搜索时,它必须首先显示ABD而不是ABC,这意味着用户最近的位置必须首先出现在下拉列表中。

我写的自动完成位置代码如下所示

autoCompleteLocation() {
    this.mapsAPILoader.load().then(() => {

        let autocomplete = new google.maps.places.Autocomplete(this.searchElementRef.nativeElement, {

        });

        autocomplete.addListener("place_changed", () => {
            this.ngZone.run(() => {
                //get the place result
                let place: google.maps.places.PlaceResult = autocomplete.getPlace();

                //verify result
                if (place.geometry === undefined || place.geometry === null) {
                    return;
                }

                //set latitude, longitude and zoom
                this.LocInsertObj.PreLocation = place.formatted_address; //place.name;
                this.LocInsertObj.PreLocation = this.LocInsertObj.PreLocation.indexOf(place.name) < 0 ? place.name + ", " + this.LocInsertObj.PreLocation : this.LocInsertObj.PreLocation;
                this.LocInsertObj.PreLocationLat = place.geometry.location.lat();
                this.LocInsertObj.PreLocationLong = place.geometry.location.lng();
                this.LocInsertObj.zip = 123;


                this.isCurrentLocationSet = true;
                $(".userProfile-container").trigger("click");
                $("#location").focus();


            });
        });
    });
}

0 个答案:

没有答案