Angularでゲームを作っています。各プレーヤー オブジェクトにはx
、 プロパティとy
プロパティがあります。プレイヤーが移動するたびに、スプライト シートのいくつかの背景位置を循環するタイマーを開始したいと考えています。
ディレクティブでこれを行うと思いました。問題は、ディレクティブでは通常、監視する式を 1 つしか設定できないことです。
// "test" directive
module.directive("test", function() {
return function(scope, element, attrs) {
scope.$watch(attrs.test, function(value) {
// do something when it changes
})
}
})
// my template
<div test="name"/>
このアプローチの良い点は、test
ディレクティブがスコープに特定のプロパティがあると想定する必要がないことです。ディレクティブを使用するときに何を使用するかを指示しています。
問題は、私の場合、x または y のいずれかが変更された場合に何かを開始する必要があることです。これどうやってするの?
<div test="player.x, player.y"/>
<div test="player.x" test-two="player.y"/>
あなたが考えることができるこれを行うための最良の方法はありますか?基本的に、いくつかのプロパティのいずれかが変更された場合にタイマーで何かを行うディレクティブを作成したいと考えています。