Wie injiziere '$ modalInstance' in einen Controller?

8

In meiner Anwendung, nachdem ich herausgefunden habe, dass ein Benutzer nicht angemeldet ist, möchte ich einen modalen Dialog öffnen:

%Vor%

Da es bei der Routenänderung passiert, muss ich einen Modalteil in eine Instanz injizieren und in der Steuerung abrufen.

%Vor%

Aber ich bekomme immer diesen Fehler:

  

Unbekannter Provider: modalpartProvider & lt; - modalpart

Wie kann ich dieses Problem lösen?

P.S. Original-Code, den ich sehe, ist hier: Ссылка (unter modal)

    
Timsen 26.02.2014, 23:20
quelle

3 Antworten

8

Ich musste den Dienst $modal in einer Route nie wie bei dem, was Sie gerade tun, verwenden, also bin ich mir nicht sicher, wie das funktionieren wird. Wenn Sie nur auf Ihren Code $modal schauen, sieht das jedoch falsch aus. Der richtige Weg sollte sein:

%Vor%

Und dann Ihre Controller-Definition:

%Vor%

Der Service $modal übernimmt automatisch die Injektion von $modalInstance in Ihren Controller, wie in der Dokumentation .

    
Beyers 26.02.2014 23:47
quelle
8

Hatte dieses Problem auch für eine Weile. Obwohl du deinen HTML-Code nicht gepostet hast, war das mein Problem. Stellen Sie sicher, dass Sie den Controller nicht in Ihrem DOM benennen, dies wurde bereits in $ modal.open () erledigt.

    
compguy24 11.02.2015 09:52
quelle
2

Ich habe das gleiche Problem, und ich fand, dass der Controller, den ich anmeldete, zweimal ausgeführt wurde! Danke für @compguy, ich habe den Controller-Namen in der Vorlage entfernt. Ich habe Erfolg!

    
rolin.tencent.Shenzhen 03.03.2015 08:03
quelle

Tags und Links