AngularJS ng-include funktioniert HistoryJS nicht mehr

9

Mein Code funktionierte, bis ich ng-include verwendete. Jedes Mal, wenn ich auf eine Seite gehe, die diese Anweisung verwendet, bleibe ich auf der Seite stecken. Der Zurück-Button funktioniert nicht mehr und du bleibst für immer in einer Schleife der gleichen Seite.

Meine Website läuft mit Asp.NET MVC 5.

Einige Teile meines Codes:

HTML "Host"

%Vor%

HTML place.html

%Vor%

JAVASCRIPT

%Vor%

Wenn ich die ng-include entferne und sie durch die "rohe" HTML ersetze, funktioniert gut . Diese "Endlosschleife" tritt nur auf, wenn ng-include hinzugefügt wird.

    
Le Coder 16.01.2014, 11:00
quelle

3 Antworten

1

Wenn Sie die Vorlagen-URL in der ng-include -Direktive festlegen, wird die angegebene Vorlage von angular aufgerufen, dann wird sie in angular $templateCache eingefügt und dann wird der Inhalt in der Ansicht gerendert. Wenn Sie es das nächste Mal aufrufen, wird es direkt aus dem eckigen $ templateCache abgerufen. Ich würde es vorziehen, dass Sie diese Vorlage in templateCache in angular run phase (vor angular run it compile cycle) einfügen. Ich würde vorschlagen, dass Sie diese Vorlage beim Start von eckigen laden.

Platzieren Sie diese Vorlage in Ihrem angular $templateCache vor dem Laden von angular auf der Seite (d. h. direkt nach der eckigen Konfigurationsphase)

CODE

%Vor%

Nachdem diese Vorlage aus $ templateCache verfügbar ist, ohne Ajax für die Vorlage zu erstellen.

Ich hoffe, das wird keine Endlosschleife verursachen. als ob du momentan ein Problem hast.

Danke.

    
Pankaj Parkar 23.01.2015 17:20
quelle
0

Ich hatte dieses Problem einmal getroffen, und es scheint der HTML5-Modus zu sein.

versuche dies in deiner App-Konfiguration hinzuzufügen:

%Vor%     
Marwen Chrif 21.03.2014 11:27
quelle
0

setze deinen Code in setTimeout, weil du, wenn du ng-include benutzt, ein paar Millisekunden brauchen, um html zu laden und an div anzuhängen, die ng-include haben.

%Vor%     
sajjad 23.04.2014 12:21
quelle

Tags und Links