ddubrava / angular-yandex-maps

🗺️ Yandex.Maps Angular components that implement the Yandex.Maps JavaScript API
https://ddubrava.github.io/angular8-yandex-maps/#/
MIT License
57 stars 7 forks source link

Получаю ошибку ExpressionChangedAfterItHasBeenCheckedError #31

Closed fr1mqa closed 4 years ago

fr1mqa commented 4 years ago

Describe the problem Добрый день.

Не могу понять проблема у меня или в библиотеке?

ERROR Error: ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: 'center: 50.78455100000636,36.48868599999999'. Current value: 'center: 53.35900409942692,37.10592749999995'.

Шаблон:

<ya-map *ngIf="addressesCoordinatesMap.size" [center]="center" [zoom]="zoom">
    <ng-container *ngFor="let coordinates of addressesCoordinatesMap | keyvalue">
        <ya-placemark [geometry]="coordinates.value.coordinates" [properties]="coordinates.value.properties"
                      (load)="calculateCenterAndZoom()"></ya-placemark>
    </ng-container>
</ya-map>

в calculateCenterAndZoom() пересчитывается центр и зум при добавлении новой точки, средствами this.ymaps.util.

Package version angular8-yandex-maps: 8.1.0

ddubrava commented 4 years ago

Добрый день, попробуйте вызывать changeDetectorRef.detectChanges() внутри calculateCenterAndZoom(), например, create-geoobject-onclick.