Mam aplikację AngularJS zaczynającą się od pliku index.html i używającą interfejsu użytkownika. Na podstawie wyzwalacza chcę przeładować całą stronę. Próbowałem:Ui-router AngularJS: wymuś ponowne ładowanie
$state.go($state.current, $stateParams, {
reload: true,
inherit: false,
notify: true
});
Ale to nie działa. Nie przeładowuje mojego początkowego pliku index.html.
mogę zrobić:
window.location.href = "index.html";
Ale jestem na mojej pierwszej stronie, a nie obecnego stanu.
Czy zestaw window.location.href
na index.html
z parametrami ciągu zapytania określa bieżącą lokalizację? Jeśli to zrobię, jak mogę przejść do tej lokalizacji?
Hi wodoru, problemem jest to, że używam najwyższej ui-routera systemu routingu dla angularjs (http://angular-ui.github.io/ui-router/site/#/api/ui.router), a nie wbudowany system routingu AngularJS. –
Ah Widzę, w tym przypadku możesz potrzebować wypróbować: '$ state.reload()', aby załadować go ponownie. 'ui.router' ma usługę $ state, którą możesz wykonać, aby to zrobić. – hydrogen
Problem to $ state.reload() nie inicjalizuje ponownie kontrolerów. Jest otwarty bilet na to https://github.com/angular-ui/ui-router/issues/582 – WTK