2017-03-21 9 views
0

上の点を表示しませんマップこれは、私のコントローラであり、これは私の問題 ある最初のクリック

<table class="table table-hover table-striped" style="margin-left:5px;"> 
     <thead> 
      <tr> 
       <th class="p-t-4"><h4>Serial Number</h4></th> 
      </tr>   
     </thead> 
     <tbody> 
      <tr ng-class="{selected:vm.objectSelected===obj}" ng-repeat="obj in vm.selectList | filter:search" ng-click="showCordinates(obj)"> 
       <td>{{obj.mynumber}}</td> 
      </tr> 
     </tbody> 
    </table> 

<map object="vm.objectSelected" > </map> 

予想される動作は、1つは上をクリックした場合テーブルに記載されているシリアルナンバー私のマップは、クリニック(予想された位置にある)に従ってポイントを表示するためにリフレッシュされなければなりません。残念ながら、これは私のアプリで起こっていることです。最初にシリアル番号をクリックしても何も起こりません。別のシリアル番号を最初にクリックし、最後にもう一度クリックして地図を更新し、ポイントを表示する必要があります。 なぜこのバグが起こっているのかわかりません。 私の地図はリーフレットライブラリで管理しています。

答えて

0

デフォルトのリーフレットの設定は何ですか?私がこれを使用したとき、私はいつもコントローラーをデフォルトのスタートポイントのように「拡張する」必要がありました:

angular.module('app') 
.controller('defaultmap',['$scope', '$http', 'leafletData', function($scope, $http, leafletData){ 

angular.extend($scope, { 
    center: { 
      lat: 27.4086665, 
      lng: 1.7576433, 
      zoom: 3 
      }, 
    defaults: { 
      scrollWheelZoom: false 
      } 
}); 

$scope.onloadMap = function() { 
    $http.get('api/lib').success(function(data, status) { 
     angular.extend($scope, { 
      geojson: { 
       data: data, 
       style: function(feature){ 
        var myStyles = { 
        fillColor: '#5e5e5e', 
        weight: 1, 
        opacity: 1, 
        color: 'white', 
        fillOpacity: 0.7 
       } 
      } 
     } 
    } 
)} 
)} 
}]); 
+0

ここで、onloadMapは自分のhtmlに挿入する必要がありますか? – Blackhat

+0

\tリーフレットid = "myMap" geojson = "geojson" lf-center = "center" defaults = "defaults" legend = "legend" width = "100%" height = "800px" > onloadMapは、コントローラが呼び出されたときに単独で実行されます。 –

+0

この角度リーフレットの指示は、実際に役に立ちます: https://github.com/tombatossals/angular- leaflet-directive –

関連する問題