Ich versuche, eine App zu entwickeln, die eine einfache Grafiken auf dem Bildschirm bearbeitet, fabricjs ist die Leinwand Bibliothek ich benutze, und AngularJS ist der MVW Rahmen ich verwende.Integration Fabricjs und AngularJS
Jetzt funktionieren die Bindungen von DOM zu Fabric ganz gut (ich klicke auf ein div und das entsprechende Objekt auf der Leinwand wird ausgewählt), aber nicht umgekehrt. Wenn ich auf ein Objekt im Canvas-Bereich klicke und es ausgewählt wird, wird das entsprechende DOM nicht aktualisiert. Ich habe here gelesen, dass ich $scope.$apply();
verwenden sollte, aber ich bin nicht sicher, wohin man das setzt.
Wie mache ich Stoff Update $scope
Zustand? Klicken Sie auf die Schaltfläche the code here, um Elemente zur Zeichenfläche hinzuzufügen, und beachten Sie, dass wenn Sie auf den Elementnamen auf der rechten Seite klicken, wird es auf der Leinwand ausgewählt, aber wenn Sie es direkt auf der Leinwand auswählen, ist es die Schaltfläche ist nicht high-lit.
Code: http://plnkr.co/edit/lMogPGjJOXx9HLAdiYqB
Können Sie eine Geige oder etwas, um uns den Code zu zeigen. Normalerweise würden Sie $ scope.apply verwenden, wenn Sie sich in einem Code außerhalb des Kontexts von angularjs und $ scope befinden. $ Apply ist die Möglichkeit, AngularJS zu informieren, die Bindungen und Beobachter auszuführen. – rajasaur
@rajasaur danke für die Antwort. Ich habe die Frage bearbeitet und ein Beispiel zu Plunkr hinzugefügt. – MeLight