2016-05-03 16 views
0

Googleマップを使用する角度アプリを作成しようとしていて、その地図上に500から始まり毎秒100ずつ増加する半径を表示します。私はGithubから必要なものをすべてフォークし、ちょうど半径を操作しようとしています。毎秒角度関数が増加する

$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> 

すべてが働いている

は、ここに私のjavascriptのコードです。

+2

関数内でradius2を返すときに、コードの入力ミスをもう一度確認できますか? – amanpurohit

+0

私は私の質問に示されているようにコードを置くと、ページはまったく動かないが、私は 'radius2'の代わりに 'radius'を返そうとしたが、それは役に立たなかった。 –

+0

'window'プロパティはパラメータとして何を期待していますか? – Shomz

答えて

0

windowプロパティをパラメータとして期待する(またはそれは単にタイプミスの場合)が、一般的に、あなたが角度間隔内でそれをすることによって直接半径を変更することができますはわからない:使用することにより

$interval(function(){ 
    $scope.map.circle.radius += 100; 
}, 1000); 

Angularの間隔ではなく、setIntervalのネイティブの代わりに、スコープダイジェストを心配する必要はありません。

また、100を増やす必要がありますが、コードに10000と書いてあります。

+0

どこに投稿するのですか、htmlかjsか?私はjsでそれを使ってみましたが、Webページを走らせると地図が表示されません –

+0

あなたのコントローラーの中には、すべてのことを見ることなく伝えるのは難しいですが、 $ interval依存関係を挿入します(例えば$ scopeのように)。コンソールのエラーを確認してください。 – Shomz

+0

半径を最初に定義したところの真下に挿入しました。私はエラーは発生していませんが、半径はまだ拡大していません –

0

角度を使用すると、角度のあるカウンターパーツでメソッドを置き換えて、正しく機能させる必要が生じることがあります。 window.setInterval()$interval()に置き換えてください。パラメータは同じ順序で渡されます。

関連する問題