我正在尝试创建一个使用谷歌地图的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>
除了改变半径的功能之外的所有东西都在工作。
答案 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,修复它。