角度函数每秒都在增加

时间:2016-05-03 03:43:11

标签: javascript html angularjs

我正在尝试创建一个使用谷歌地图的Angular应用程序,并在该地图上显示一个从500开始并每秒增加100的半径。我从Github分配了我需要的所有东西,我只是试图操纵半径。

这是我的javascript代码:

$scope.map.circle = {
              id: 1,
              center: center,
              radius: 500,


              //This function is not working, causes the radius to stop showing up on map
              $interval: (function(){
              $scope.map.circle.radius += 100;
               }, 1000),



              stroke: {
                  color: '#08B21F',
                  weight: 2,
                  opacity: 1
              },

我的HTML:

<ui-gmap-circle 
                center='map.circle.center'
                radius='map.circle.radius'
                fill='map.circle.fill'
                stroke='map.circle.stroke'
                clickable='map.circle.clickable'
                draggable='map.circle.draggable'
                editable='map.circle.editable'
                visible='map.circle.visible'
                events='map.circle.events'>
</ui-gmap-circle>

除了改变半径的功能之外的所有东西都在工作。

2 个答案:

答案 0 :(得分:0)

使用Angular时,您偶尔必须使用角度计数器部件替换方法才能正常工作。将window.setInterval()替换为$interval()。参数以相同的顺序传递。

答案 1 :(得分:0)

不确定@media only screen and (max-width: 1024px){ .desktop_only { display: none !important; } .touch .desktop_only { display: none !important; } .no-touch .mobile_only { display: initial !important; } } @media only screen and (min-width: 1025px){ .mobile_only { display: none !important; } .touch .desktop_only { display: initial !important; } .no-touch .mobile_only { display: none !important; } } 属性期望什么作为参数(或者这只是一个错字),但通常,您可以通过在Angular区间内进行直接更改半径:

window

使用Angular的间隔代替原生$interval(function(){ $scope.map.circle.radius += 100; }, 1000); ,您不必担心范围摘要。

另外,你说它应该增加100,但它在你的代码中说10000,修复它。