我正在使用angularjs库ng-map创建一个基于地图的应用程序,并遇到了一个相当奇怪的错误。
我有以下代码:
的script.js
vm.showMarker = true //Boolean to toggle marker
vm.toggleMarker = function(){
if(vm.map.getZoom()>=12){
vm.showMarker = true;
} else {
vm.showMarker = false;
}
$scope.$apply();
}
HTML
<ng-map on-zoom-changed="vm.toggleMarker()" zoom="9">
<custom-marker>
<div ng-show="vm.showMarker">
...
</div>
</custom-marker>
</ng-map>
我们的想法是,只有在地图缩放得足够的情况下才能看到标记。
如果vm.showMarker
从上面开始设置为true,则在加载页面时首先显示标记,然后在缩放时消失,直到缩放为&gt; = 12按预期进行。
但是,如果我将vm.showMarker
设置为false,使其从头开始不可见,则在放大时不会显示。
有什么可能导致这种行为的想法吗?
答案 0 :(得分:1)
请尝试使用ng-if
:
<custom-marker ng-if="vm.showMarker">