title: Angular refresh the application if the URL is written manually
body: <p>I'm using Angular 6 and I have an issue with the change of routes.
  If I navigate through the application using the routerLink or the navigate() method, it works correctly, because it only load the new module (if necessary).
  But for example if I am in this link: localhost:8080/home, I click on the URL, cancel the 'home', write 'profile' and press Enter, it correctly goes on profile page but the application in reloaded (also the app component). Why? I can't figure out.
  This is my routing:</p>
  
  <pre><code>const appRoutes: Routes = [
    { path: 'home', component: HomeComponent, canActivate: [AuthGuard] },
    { path: 'profile', component: ProfileComponent, canActivate: [AuthGuard] },
    { path: 'login', component: LoginComponent },
    { path: '', redirectTo: 'home', pathMatch: 'full' },
    { path: '**', component: PageNotFoundComponent }
  ];
  
  @NgModule({
    imports: [
      RouterModule.forRoot(appRoutes, { preloadingStrategy: PreloadAllModules })
    ],
    exports: [RouterModule]
  })
  export class AppRoutingModule { }
  </code></pre>
  
  <p>Maybe the issue is on the auth-guard?</p>
  
  <pre><code>@Injectable()
  export class AuthGuard implements CanActivate {
  
  constructor(private store: Store&lt;fromApp.AppState&gt;, private route: ActivatedRoute, private router: Router) {
  }
  canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {
      return this.store.select('auth')
          .pipe(take(1),
              map((authState: fromAuth.State) =&gt; {
                  if (authState.authenticated) {
                      return true;
                  } else {
                      let sessionStorageToken: string = sessionStorage.getItem('token');
                      if (sessionStorageToken) {
                          this.store.dispatch(new AuthActions.Login());
                          this.store.dispatch(new AuthActions.SetToken(sessionStorageToken));
                          return true;
                      } else {
                          let url = state.url;
                          this.router.navigate(['/login', { redirectTo: url }]);
                          return false;
                      }
                  }
              }));
  }
  }
  </code></pre>
  
  <p>This is profile.module.ts:</p>
  
  <pre><code>@NgModule({
  declarations: [
      ProfileComponent
  ],
  imports: [
      CommonModule,
      FormsModule
  ]
   })
   export class ProfileModule { }
  </code></pre>