Ich versuche, eine Gruppe von ziehbaren DOM-Objekten mithilfe der .draggable()
von jQuery UI zu erstellen, die über Meteor-Abonnements gefüllt werden. Der Code, den ich mir ausgedacht habe, sieht aus wie
Diese entsprechen einigen Meteor.publish()
-Aufrufen, so dass jedes Mal, wenn sich die Sammlung ändert, das Verhalten .draggable()
angehängt wird. Zumindest war das meine Absicht.
Allerdings funktioniert es nur einmal - sobald einer dieser <li>
gezogen und abgelegt wurde, sind sie nicht mehr ziehbar.
Wenn die Objekte fallengelassen werden, feuere ich ein benutzerdefiniertes Ereignis ab, das an die Template
für das Objekt angehängt ist, wie zB
Ich denke also, dass sich diese Änderung der Sammlung beim Ablegen durch den Pub / Sub-Prozess fortpflanzen und die obige Zeile .draggable()
erneut ausführen sollte. Aber es scheint nicht zu sein.
Der vollständige Code dafür ist hier Ссылка und der App zu sehen ist live bei Ссылка (es gibt einige andere Probleme, die wahrscheinlich nicht zusammenhängen mit Elementen, die nach dem Zufallsprinzip Werte verlieren oder ganz von der Benutzeroberfläche verschwinden)
Wenn ich also verstehe, wie Pub / Sub in Meteor funktioniert, wäre es gut zu wissen. Oder gibt es einen effizienteren Weg, um diese UI-Verhaltensbindung zu erreichen, die ohne sie funktioniert?
Die Art, wie ich das in meinen Apps implementiert habe, ist mit der Methode von @lashleigh.
Ich habe ein Vorlagenereignis, das den folgenden Code verwendet:
%Vor%Dann höre ich auf die Bremse so.
%Vor%Sie können die App, die diesen Code verwendet, unter aduno.meteor.com
sehenTags und Links meteor jquery-draggable