投保箱所选值更改后,ngx-leaflet重新加载地图

时间:2018-07-30 19:23:32

标签: angular leaflet ngx-leaflet

我有一个具有多个方程式(即km,m,cm)的保管箱。最初,地图加载了km值。

 <div leaflet style="height: 800px; width: 100%" 
  [leafletOptions]="options" 
  (leafletMapReady)="onMapReady($event)" 
  [leafletBaseLayers]="baseLayers"
  [leafletMarkerCluster]="markerClusterData" 
  [leafletMarkerClusterOptions]="markerClusterOptions"
  (leafletMarkerClusterReady)="markerClusterReady($event)">
</div>

如果用户选择仪表,我想使用新的计算(即km * 1000)重新加载/刷新地图。主要是想更新弹出窗口和图例,但是完全重新加载地图就可以了。如何发出事件以使用新值重新加载地图?谢谢

1 个答案:

答案 0 :(得分:0)

我不确定我是否完全理解您的问题,但也许是这样吗?

在HTML模板中:

<select (change)="changed($event)">
  <option value="km">km</option>
  <option value="m">m</option>
  <option value="cm">cm</option>
</select>

在TS文件中:

changed($event) {
 reloadWithUnits($event.srcElement.value);
}

对于@angular/material

<mat-select (valueChange)="changedMat($event)" placeholder="Select units">
  <mat-option value="km">km</mat-option>
  <mat-option value="m">m</mat-option>
  <mat-option value="cm">cm</mat-option>
</mat-select>

和TS:

changedMat($event) {
 reloadWithUnits($event);
}

reloadWithUnits();中,我将尝试更改options或任何单位。应该将其检测为已更改,因为它是传单的输入参数。