Angular routerLink zawiesza przegldarkę

Angular routerLink zawiesza przegldarkę
bakunet
  • Rejestracja:około 8 lat
  • Ostatnio:około 5 godzin
  • Lokalizacja:Polska
  • Postów:1609
0

Przed chwilą pracowałem nad aplikacją w Angular, po dodaniu nowego widoku zaczęła mi wyczyniać dziwne rzeczy.

A mianowicie po kliknięciu któregokolwiek linku korzystającego z routerLink zakładka przeglądarki się zawiesza, jakby wykonywała niekończącą się pętlę w JS.

Chcę zaznaczyć, że wspominany wcześniej widok wykonuje jedynie prostą iterację, więc wątpię, że on powoduje problem. Szczególnie, że aplikacja nie działa nawet po jego usunięciu.

Przeinstalowałem Angular CLI zgodnie z tą instrukcją, problem nie zniknął. Co jeszcze może go powodować?

Aplikacja testowana na 3 różnych przeglądarkach.

Kierując się tą instrukcją też podniosłem lokalną wersję Angulara projektu. Niestety nie pomogło.

edytowany 2x, ostatnio: bakunet
Patryk27
Moderator
  • Rejestracja:ponad 17 lat
  • Ostatnio:prawie 2 lata
  • Lokalizacja:Wrocław
  • Postów:13042
1

Prawdopodobnie masz tam jakąś pętlę przekierowań - ciężko powiedzieć bez dostępu do kodu; jesteś w stanie dorzucić dokądś debugger; i przestepować kod?


edytowany 1x, ostatnio: Patryk27
bakunet
Nawiązując do pytania o debugger, nie korzystałem z niego. Ale nawet wrzucając zwykły console.log w ngOnInit wołanego komponentu nic nie daje, ponieważ kod nie jest wykonywany.
bakunet
  • Rejestracja:około 8 lat
  • Ostatnio:około 5 godzin
  • Lokalizacja:Polska
  • Postów:1609
0

@Patryk27:

Problem jest tego rodzaju, że jedyna pętla w nowo dodanym kodzie to:

Kopiuj
<tr *ngFor="let game of this.gameList; let i = index">
      <th scope="row">{{ i + 1 }}</th>
      <td>{{ game.gameTurnNumber }}</td>
      <td>{{ game.playing }} / {{ game.totalPlayers }}</td>
      <td>
        <a class="nav-link text-light" [routerLink]="['play/' + game.gameId]">
          Join game
        </a>
      </td>
    </tr>

Poza tym komponent nie jest wykorzystywany przez inne komponenty, a nie ładują mi się widoki które ładowały mi się wcześniej bez najmniejszego problemu, a w których nic nie zmieniałem już od kilku dni.

Działa mi jeden jedyny link korzystający z routerLink, jednak po kilku przekierowaniach też zaczyna mi wieszać stronę.

EDIT
Podejrzewam, że problem leży po stronie kompilatora lub może nawet jakiejś wtyczki do VS Code, choć to drugie wydaje mi się mniej prawdopodobne. Przeglądarkę wykluczyłem testując aplikację na trzech różnych.

edytowany 3x, ostatnio: bakunet
bakunet
  • Rejestracja:około 8 lat
  • Ostatnio:około 5 godzin
  • Lokalizacja:Polska
  • Postów:1609
1
Patryk27 napisał(a):

Prawdopodobnie masz tam jakąś pętlę przekierowań - ciężko powiedzieć bez dostępu do kodu; jesteś w stanie dorzucić dokądś debugger; i przestepować kod?

@Patryk27: Okazało się, że jednak miałeś sporo racji.

W RouterModule jedna ścieżka kierowała do dwóch różnych komponentów, co przeoczyłem dodając nowy widok wraz z komponentem. A byłem przekonany, że to kompilator się rozsypał (znowu). No nic, przynajmniej przy okazji podniosłem wersję o oczko wyżej :)

edytowany 1x, ostatnio: bakunet

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.