1

我正在使用 google 地方自动完成功能为我的用户推荐学校。当我将类型指定为学校或 point_of_interest 作为另一个示例时,自动完成功能根本不起作用。当我将类型指定为建立或地理编码时,自动完成工作正常。

我正在使用 Ionic 4,我的自动完成代码如下所示:

profile.page.ts

    getHighSchoolAutocomplete() {
          let input = this.highSchoolText;
          this.myHSAutocomplete = new google.maps.places.Autocomplete(input.nativeElement, {types: ['school']});
          google.maps.event.addListener(this.myHSAutocomplete, 'place_changed', () => {
            // retrieve the place object for your use
            let place = this.myHSAutocomplete.getPlace();
            console.log('initPlaces place getHighSchoolAutocomplete', place.formatted_address);
            this.addressHS = this.tmpParentInfo.get('myHighSchool').setValue(place.formatted_address);
          });
        }
      }

profile.page.html

    <h5 class="ion-padding-start">High School:<br></h5>
    <input type="text" #highSchoolText formControlName="myHighSchool" class="highSchoolClass" id="googlePlaces1" class="ion-padding-start">

index.html(googlemaps api 字符串)

 <script src="https://maps.googleapis.com/maps/api/js?v=3.26&key=MY_API_KEY&libraries=places"></script>

我已经在这里尝试过修复,但没有骰子: Google Places Autocomplete 没有出现

4

1 回答 1

0

预计自动完成功能不起作用,因为school它不是此服务支持的类型。

这就是为什么它在您指定时起作用的原因,establishment或者geocode相反,因为这些 受支持的类型。您只能将结果限制为地方搜索请求中的school类型(或表 1中列出的任何其他类型)。

希望这可以帮助。

于 2019-09-21T18:59:43.160 回答