введите описание изображения здесь

Привет я не получаю этот автоматический адрес, когда я использую *ngIf или пытаюсь добавить div , в противном случае он работает полностью нормально. Что я должен сделать, чтобы получить этот автоматический адрес вместе с *ngIf и добавить его.

 {amp}lt;div class="form-group label-floating"{amp}gt; {amp}lt;label class="control-label"{amp}gt;Address1{amp}lt;/label{amp}gt; {amp}lt;input type="text" class="form-control search-address" name="address1" placeholder=" " [(ngModel)]="address1" #address1{amp}gt; {amp}lt;/div{amp}gt; 

В приведенном выше коде авто адрес работает

 {amp}lt;div *ngIf="isShow"{amp}gt; {amp}lt;div class="form-group label-floating" *ngFor="let place of places"{amp}gt; {amp}lt;label class="control-label"{amp}gt;Place{amp}lt;/label{amp}gt; {amp}lt;input type="text" class="form-control search-address" name="address2" placeholder=" " [(ngModel)]="place.address2" #address2{amp}gt; {amp}lt;/div{amp}gt; {amp}lt;/div{amp}gt; 

В приведенном выше коде автоадреса не работает, и единственное отличие состоит в том, что я использую структурные директивы.

мой тс код

 const address1 = new google.maps.places.Autocomplete(this.address1.nativeElement, { componentRestrictions: { country: 'IN' }, types: [this.adressType] }); google.maps.event.addListener(address1, 'place_changed', () ={amp}gt; { this.place = address1.getPlace(); this.invokeEvent(this.place); }); 

Пожалуйста, предложите мне хорошее решение, где я могу использовать все три из них. Спасибо.

Поскольку вы используете массив значений, вы должны использовать ViewChildren для инициализации автозаполнения Google.

Попробуй это

  @ViewChildren('address2') element :QueryList{amp}lt;ElementRef{amp}gt;; this.element.toArray().forEach(elem={amp}gt;{ new google.maps.places.Autocomplete(elem.nativeElement); })