があり、Kinetic.Groupそのプロパティに variable を追加しましたactualstatus。actualstatusは、他の JavaScript によって「1」または「0」に動的に変更されます ( 1 = ON 0 = OFF)。今、私がやろうとしているのは、KineticJS で実際のステータス (オンまたはオフ) を表示することです。カスタムを使用すると、次のKinetic.Shapeように簡単に実行できます。
var shape = new Kinetic.Shape({
actualstatus: "",
drawFunc: function(canvas){
var ctx = canvas.getContext();
ctx.beginPath();
if(this.actualstatus == "1") ctx.fillStyle = "yellow";
else if(this.actualstatus == "0") ctx.fillStyle = "lightgrey";
ctx.fillRect(0,0,50,50);
ctx.closePath();
}
});
問題なく動作しましたが、イベントをリッスンしたり、複数を使用してctx.beginPath() ctx.closePath()複雑なウィジェットを描画したりすることはできませんでした。
そのため、イベントと複雑な描画の問題を解決する非カスタム キネティック シェイプのみを使用して再構築していますactualstatusが、グループの - プロパティに従って、色やテキストが変更されなくなりました。すべての形状。
だから私の質問に:プロパティが変更されるたびに、新しい色などで形状を再描画する方法はありactualstatusますか? または、変更をリッスンする方法はありactualstatusますか?
上記で少し複雑に言ったことのイメージをどうにか理解していただければ幸いです:)もちろん、どんな助けも大歓迎です;)