Como recarregar a página da página com paginação em Angular 2? [fechadas]

85

Como posso recarregar a página atual no Angular 2?

se iam na página 2 (paginação) e atualiza a página, ele mostrará a página 1 (URL de carregamento de página), mas eu quero atualizar a página 2 e ela aparecerá na página 2

FABI1987
fonte
O que você deseja alcançar recarregando? Pode haver maneiras alternativas de conseguir o mesmo?
Madhu Ranjan
@MadhuRanjan eu quero redefinir todo o modelo, mas não valor após valor,
FABI1987
você pode ter todas as funções de busca de modelo em um método comum e chamá-lo sempre que necessário.
Madhu Ranjan
2
normalmente, os recursos do navegador funcionam independentemente da plataforma, se estiver disponível oficialmente para o respectivo sistema operacional. Tendo dito isso, sugiro que você crie uma nova pergunta de SO sobre como contornar o window.location.reload()Chrome no Linux, que seria o lugar ideal para obter sua resposta, e então você pode verificar seu código para obter a versão do navegador e uma lógica ao redor, Cheers !!
Madhu Ranjan
1
FWIW, meu próprio caso de uso para isso é o suporte a vários idiomas, já que a partir da v5.1, o Angular ainda não o suportava sem fazer uma implantação separada por idioma. Eu tenho uma página do Razor que decide qual pacote de script Angular carregar, dependendo da preferência de idioma que obtém do banco de dados do usuário do back-end do ASP.NET Core. Para alterar o idioma após o usuário alterar suas preferências, recarregar apenas o Angular SPA não será suficiente, preciso recarregar toda a página do Razor para que ele carregue um Angular SPA diferente.
Daniel Saner

Respostas:

185

Isso deve ser tecnicamente possível usando window.location.reload():

HTML:

<button (click)="refresh()">Refresh</button>

TS:

refresh(): void {
    window.location.reload();
}

Atualizar:

Aqui está um exemplo básico do StackBlitz mostrando a atualização em ação. Observe que a URL no caminho "/ hello" é mantida quando window.location.reload()é executada.

Alexander Staroselsky
fonte
5
Eu quero windows.location melhor maneira que não plataforma cruzada ...
FABI1987
Não existe uma forma simples de plataforma cruzada. Você teria que verificar qual plataforma é e, em seguida, fazer o recarregamento apropriado para essa plataforma.
Joo Beck de
A atualização não funciona e apenas traz o usuário de volta à primeira página.
Ace
Isso pode depender de como seu roteamento está configurado, bem como de como as rotas do SPA são carregadas pelo servidor. reload()é uma abordagem padrão do navegador para recarregar recursos do URL atual.
Alexander Staroselsky