【问题标题】:How to hide or remove dynamically added marker in Ngmap如何在 Ngmap 中隐藏或删除动态添加的标记
【发布时间】:2016-04-07 14:14:22
【问题描述】:

我有一个表格和地图(ngMap),填写表格并在地图上插入标记后,如果我点击提交,它将保存。但是如果我再添加一个,标记将已经存在于先前坐标的位置。如果我手动重新加载页面,标记将不在地图上。如何在不手动重新加载页面的情况下删除或隐藏。
HTML

  <ng-map zoom="13" center="{{coordinates.lat}},{{coordinates.lng}}" map-type-id="TERRAIN">
                    <marker></marker>
                    <shape name="polygon" on-click="drawPolygon()" paths={{rectangle}} stroke-color="#ff3232" stroke-opacity="0.8" stroke-weight="2" fill-color="#ff4c4c" fill-opacity="0.35">
                    </shape>
                    <drawing-manager on-overlaycomplete="insertMarker()" drawing-control-options="{position: 'TOP_CENTER',drawingModes:['marker']}" markerOptions="{icon:'http://www1.durban.gov.za/beachwater/images/markers/orange-dot.png'}" drawingControl="true" drawingMode="null">
                    </drawing-manager>
                </ng-map>


控制器

    $scope.drawingControlOptions = {
        position: 'TOP_CENTER',
        drawingModes: ['polygon', 'marker']
    };
    $scope.placesCounter = 0;
    $scope.insertMarker = function(e) {
        if (e.type == google.maps.drawing.OverlayType.MARKER) {
            $scope.placesCounter++;
            if ($scope.placesCounter > 1)
                e.overlay.setMap(null); //disable marker from diplaying ..
            var pos = e.overlay.getPosition();
            $scope.markercoordinates = pos.toString();
        }
    };

我也尝试过这样的成功承诺,但没有奏效

$scope.positions= [];
place.coordinates=$scope.positions[0];

由于我使用了 ui-router,我尝试像这样$state.transitionTo('dashboard.places.list', null, { reload: true, inherit: false, notify: true }); 以编程方式重新加载页面
那也没有用。谁能帮帮我

【问题讨论】:

    标签: javascript angularjs google-maps ng-map


    【解决方案1】:

    github 对此进行了讨论,该问题已在 ngMap 版本 1.17.1 中得到修复。

    【讨论】:

      猜你喜欢
      • 2020-08-18
      • 2023-03-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-18
      • 2015-03-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多