Merge pull request #5444 from sbwalker/dev

resolve interactive rendering issue
This commit is contained in:
Shaun Walker
2025-07-31 11:04:37 -04:00
committed by GitHub

View File

@ -48,18 +48,12 @@
private bool _initialized = false; private bool _initialized = false;
private bool _installed = false; private bool _installed = false;
private string _display = ""; private string _display = "display: none;"; // prevents flash on initial interactive page load when using prerendering
private PageState _pageState { get; set; } private PageState _pageState { get; set; }
protected override async Task OnParametersSetAsync() protected override async Task OnParametersSetAsync()
{ {
if (PageState != null && PageState.RenderMode == RenderModes.Interactive && PageState.Site.Prerender)
{
// prevents flash on initial interactive page load when using prerendering
_display = "display: none;";
}
SiteState.AntiForgeryToken = AntiForgeryToken; SiteState.AntiForgeryToken = AntiForgeryToken;
SiteState.AuthorizationToken = AuthorizationToken; SiteState.AuthorizationToken = AuthorizationToken;
SiteState.Platform = Platform; SiteState.Platform = Platform;
@ -89,9 +83,10 @@
protected override void OnAfterRender(bool firstRender) protected override void OnAfterRender(bool firstRender)
{ {
if (firstRender) if (firstRender && _display == "display: none;")
{ {
_display = ""; _display = "";
StateHasChanged(); // required or else the UI will not refresh
} }
} }