Ich verwende den Angular UI Router. Bitte finden Sie den Code unten.
index.html
%Vor%RouteMainController.js
%Vor%Login.html
%Vor%LoginController.js
%Vor%Startseite.html
%Vor%Test1.html
%Vor%Ich kann mich erfolgreich anmelden und den Menü-Tab mit "Hallo Welt" Link erhalten. Ich möchte die Menüleiste immer anzeigen und den folgenden Text dynamisch ändern.
Mein Problem ist, dass wenn ich auf "Hello World" Link geklickt habe, erwarte ich Foo anstelle von "Hallo Welt" Link, aber es funktioniert nicht. Auch wenn es Zustände (URL) ändert, wird die aktuelle Ansicht nicht geladen.
Bitte helfen Sie mir dabei.
Es gibt ein strukturelles Problem mit Ihrem Code. Der Status requestdetail
ist ein untergeordneter Status von home.requestsummary
und erfordert daher eine ui-view
in der Vorlage von home.requestsummary
state, an die HTML gebunden werden kann.
Gemäß Ihrem Code gibt es keine ui-view
in Test1.html
. Um sicherzugehen, dass es kein anderes Problem gibt, können Sie versuchen, ui-view
in Test1.html
hinzuzufügen und die Statuskonfiguration wie folgt zu ändern:
Überprüfen Sie nach dieser Änderung, ob die Überschrift Foo in der Ansicht angezeigt wird. Wenn es angezeigt wird, ist alles in Ordnung mit Ihrem Code. Jetzt ist der zweite Teil, um die Überschrift Foo an der gleichen Stelle zu laden, wo der Link Hallo Welt angezeigt wird.
Dazu müssen Sie das Ansichtsziel ändern, da homedetailview
in Home.html
vorhanden ist. Dies ist der übergeordnete Status von home.requestsummary
. Daher müssen Sie die Statuskonfiguration für home.requestsummary.requestdetail
wie folgt ändern:
Dies wird absolut auf die homedetailview
im Status home
abzielen, und Ihre Vorlage für home.requestsummary.requestdetail
wird dort angezeigt.
Tags und Links javascript angularjs angular-ui-router