Предположим, у меня есть тег <a routerLink="/foo">
, где /foo
перенаправляется на FooPageComponent
, который отображает содержимое в <router-outlet />
из AppComponent
. Если я Ctrl + Щелкните левой кнопкой мыши по этой ссылке, /foo
будет открыт на второй вкладке . Означает ли это, что это будет независимый, второй экземпляр моего одностраничного приложения ?
Я знаю, что вторая страница использует тот же сервер, localStorage et c., Так что это не полностью независимый. Но будут ли у него собственные экземпляры глобальных объектов (например, маршрутизатор, одноэлементные службы и т. Д. c.)? Будет ли он также запускать код APP_INITIALIZER
?
В целом, является ли хорошей практикой в случае одностраничных приложений разрешать пользователям открывать страницы в новых вкладках или лучше оставаться на той же вкладке, и использовать, например, всплывающие окна вместо новых вкладок?