ng-include mit $ state.go () von ui-router funktioniert nicht

8

Ich habe das:

%Vor%

Dies beinhaltet Schaltflächen sowohl von der / customer Route als auch von der / customers /: id Routen. Ich kann Schaltflächen mit Aktionen dynamisch hinzufügen. Wenn ich zu Kunden gehe, füge ich Schaltflächen über diese Service-Schnittstelle hinzu:

%Vor%

so aus meiner Kundenliste:

%Vor%

(Dies geschieht aus einem Modal mit ui-foundation aus pineconellc auf GitHub)

%Vor%

Diese Schaltfläche funktioniert jedoch nicht, wenn dieser Code aktiviert ist:

%Vor%

Wenn ich nur einen normalen Knopf mache und die Funktion benutze funktioniert es gut. Also habe ich ein Problem.

Da ich jetzt eine Prämie platziert habe, wenn Sie mehr Code sehen möchten, fragen Sie bitte und ich werde relevante Quellen veröffentlichen.

    
dkran 18.05.2015, 02:01
quelle

3 Antworten

1

Sehen Sie sich zwei Tasten an:

%Vor%

erste Arbeit, zweite nicht. (Generierte HTML ist das gleiche) Siehe Plunk: Ссылка Und der Grund ist einfach - im zweiten Fall wird 'foo ()' nur als Basis-String betrachtet.

Ändern Sie also einfach Ihren Code, um die Funktion an addButton zu übergeben.

    
Petr Averyanov 24.05.2015 23:14
quelle
1

Ich denke, das Problem besteht darin, dass Sie 'toTheGrid()' als Zeichenfolge anstelle einer Funktion übergeben.
Ich würde etwas anderes ausprobieren:

buttonbar.html

%Vor%

customerDetail.js

%Vor%     
pasine 25.05.2015 18:51
quelle
0

Ich merke aus dem Kommentar, dass Sie wie folgt ein dynamisches HTML-Tag hatten:

%Vor%

Ich denke, die href kann verhindern, dass der ng-Klick ausgelöst wird. Sie können versuchen, die href="#" aus dem Anchor-Tag zu entfernen (standardmäßig wird preventDefault aufgerufen). Oder Sie können eine benutzerdefinierte Anweisung für das Attribut anchor-Tag schreiben und in der benutzerdefinierten Anweisung preventDefault () für das click-Ereignis

aufrufen     
ngunha02 26.05.2015 23:43
quelle