Angular перезагружает все приложение при навигации назад (location.back) - PullRequest
0 голосов
/ 18 мая 2018

Я заметил, что location.back () перезагружает все приложение в моем приложении StackBlitz.com Tour of Heroes.

Почему это происходит?

https://stackblitz.com/angular/qvvrbgrmmda?file=src%2Fapp%2Fhero-detail%2Fhero-detail.component.ts

1 Ответ

0 голосов
/ 18 мая 2018

Добавьте

import {CommonModule, HashLocationStrategy, LocationStrategy} from '@angular/common';

и

  providers: [
    {
      provide: LocationStrategy,
      useClass:  HashLocationStrategy
    }
  ],

и

  imports: [
    CommonModule,
  // ...

в вашем app.module.ts

Теперь есть# в вашем URL, который не позволяет приложению загружать новый экземпляр всего приложения каждый раз, когда вы перемещаетесь в приложении.Прежде чем вы спросите, единственный способ избавиться от # - это рендеринг на стороне сервера, например, с Angular Universal. Вам также понадобится использовать localalstorage или внутренний вызов для сохранения состояния приложения, что не является хорошей практикой.Так что просто придерживайтесь #.Для получения дополнительной информации см https://stackoverflow.com/a/37031886/4125622

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...