Ich habe dieses großartige Tutorial ( link ) für Auserwählte und Angulare (der Code ist ziemlich derselbe) befolgt )
Hier ist meine Anweisung:
%Vor%Hier ist html:
%Vor%Was ich möchte ist, wenn der Benutzer auf die Schaltfläche "Bearbeiten" klickt, erscheint das modale Fenster und die Kategorien, die ausgewählt wurden, bevor Sie auf "Bearbeiten" klicken, werden im modalen Fenster ausgewählt.
Hier ist der Teil des Controllers:
%Vor%Ich habe $ scope.selectedCategories geloggt und alles ist in Ordnung, aber aus irgendeinem Grund ist nichts ausgewählt.
Was mache ich also falsch und wie kann ich es beheben?
BEARBEITEN
Ich habe bemerkt, wenn ich einige Elemente auswähle, schließe modal, öffne es wieder, ausgewählte Werte sind wieder da, obwohl ich diese Zeile in $ watch
stecke %Vor%BEARBEITEN 2
Also habe ich dieses Problem für eine Weile verlassen, weil ich wichtigere Dinge zu erledigen hatte. Ich habe versucht, ohne gewählt, d. H. Mit "normalen" wählen und Code funktioniert. Also definitiv funktioniert meine gewählte Direktive nicht wie es sollte.
Erweiterte Version des Kommentars zur vorherigen Lösung.
Gleich wie der Autor, in HTML-Markup stelle ich Source-Collection wie chosen="vm.myCollection"
zur Verfügung, tatsächlich Parsing ng-options
oder ng-repeat
-Eigenschaft mit Regexp ist besser, vielleicht später.
Im Gegensatz zu OP verwende ich $ watchCollection für ein Array und rufe Unwatches auf, wenn der Scope kurz davor ist, zu zerstören.
Tags und Links javascript angularjs angularjs-directive jquery-chosen