O Blazor App verificará se há um elemento html com id ={dialogId} na página:
Se esse elemento não existir, ele usará o manipulador padrão para exibir a mensagem.
Se esse elemento existir, o elemento classserá:
definido como components-reconnect-showao tentar se reconectar ao servidor,
definido como components-reconnect-failedquando não conseguiu se conectar ao servidor.
definido como components-reconnect-refusedse o navegador chegasse ao servidor enquanto o servidor rejeitasse a conexão ativamente
Por padrão, o dialogIdé components-reconnect-modal. Assim, você pode criar um elemento na página e usar CSS para controlar o conteúdo e os estilos que desejar.
Demo:
Por exemplo, eu crio três partes do conteúdo para exibir dentro do Pages/_Host.cshtml:
<divid="components-reconnect-modal"class="my-reconnect-modal components-reconnect-hide"><divclass="show"><p>
This is the message when attempting to connect to server</p></div><divclass="failed"><p>
This is the custom message when failing </p></div><divclass="refused"><p>
This is the custom message when refused</p></div></div><app>
@(await Html.RenderComponentAsync<App>(RenderMode.ServerPrerendered))</app><scriptsrc="_framework/blazor.server.js"></script>
E então vamos adicionar um pouco de CSS para controlar o estilo:
Para o lado do javascript, o Blazor expõe uma pequena API por meio do window.Blazorobjeto.
Uma parte dessa API é a defaultReconnectionHandlerque permite personalizar a experiência de reconexão, incluindo a definição de opções diferentes para o número de repetições, etc.
No entanto, também é possível trocar a lógica para exibir as informações ReconnectionDisplay
Uma implementação simples se parece com isso e permite que você controle o processo:
Bem, é uma maneira de resolvê-lo também. Mas eu prefiro o @itminus muito mais. Obrigado a todos.
Melon NG
Claro, depende do seu caso de uso. Se você precisar de mais controle (por exemplo, execute o código personalizado quando a conexão falhar), use a API. Se você quiser apenas trocar a interface do usuário, siga a sugestão @itminus.
Para o lado do javascript, o Blazor expõe uma pequena API por meio do
window.Blazor
objeto.Uma parte dessa API é a
defaultReconnectionHandler
que permite personalizar a experiência de reconexão, incluindo a definição de opções diferentes para o número de repetições, etc.No entanto, também é possível trocar a lógica para exibir as informações
ReconnectionDisplay
Uma implementação simples se parece com isso e permite que você controle o processo:
fonte