mirror of
https://github.com/marcominerva/SqlDatabaseVectorSearch.git
synced 2026-08-04 09:48:57 +00:00
Refactor message scrolling and cleanup Error.razor
Moved message scrolling logic to OnAfterRenderAsync to ensure DOM updates before scrolling, using Task.Yield() after StateHasChanged. Removed redundant EnsureMessageIsVisibleAsync calls. Cleaned up Error.razor by removing unused usings and the rendermode directive.
This commit is contained in:
@@ -141,6 +141,12 @@
|
|||||||
|
|
||||||
protected override async Task OnAfterRenderAsync(bool firstRender)
|
protected override async Task OnAfterRenderAsync(bool firstRender)
|
||||||
{
|
{
|
||||||
|
// Scrolling here guarantees the browser DOM already contains the latest messages.
|
||||||
|
if (messages.Count > 0)
|
||||||
|
{
|
||||||
|
await EnsureMessageIsVisibleAsync();
|
||||||
|
}
|
||||||
|
|
||||||
if (!firstRender)
|
if (!firstRender)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
@@ -179,9 +185,7 @@
|
|||||||
|
|
||||||
question = null;
|
question = null;
|
||||||
await InvokeAsync(StateHasChanged);
|
await InvokeAsync(StateHasChanged);
|
||||||
|
await Task.Yield();
|
||||||
await EnsureMessageIsVisibleAsync();
|
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
await using var scope = ServiceScopeFactory.CreateAsyncScope();
|
await using var scope = ServiceScopeFactory.CreateAsyncScope();
|
||||||
@@ -208,7 +212,6 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
await InvokeAsync(StateHasChanged);
|
await InvokeAsync(StateHasChanged);
|
||||||
|
|
||||||
await EnsureMessageIsVisibleAsync();
|
await EnsureMessageIsVisibleAsync();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -221,8 +224,6 @@
|
|||||||
{
|
{
|
||||||
isAsking = false;
|
isAsking = false;
|
||||||
await InvokeAsync(StateHasChanged);
|
await InvokeAsync(StateHasChanged);
|
||||||
|
|
||||||
await EnsureMessageIsVisibleAsync();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,4 @@
|
|||||||
@page "/Error"
|
@page "/Error"
|
||||||
@using System.Diagnostics
|
|
||||||
@rendermode @(new InteractiveServerRenderMode(prerender: false))
|
|
||||||
|
|
||||||
<div class="d-flex align-items-center justify-content-center">
|
<div class="d-flex align-items-center justify-content-center">
|
||||||
<div class="text-center">
|
<div class="text-center">
|
||||||
|
|||||||
Reference in New Issue
Block a user