@page "/chat/{chatId}" @inject IHttpClientFactory ClientFactory @inject IJSRuntime JSRuntime @name
@name
    @if (!isLoading && Messages != null) { @foreach (var item in Messages) { if (item.Role != "User") {
  • @item.Text

  • } else {
  • @item.Text

  • } } }
@if (Suggestion.Count != 0) {
Several possible options
@foreach (var item in Suggestion) {
@item
}
}
Send message
@code { [Parameter] public string chatId { get; set; } protected override async Task OnParametersSetAsync() { await LoadMessages(); } public void Enter(KeyboardEventArgs e) { if (e.Code == "Enter" || e.Code == "NumpadEnter") { AddNewMessage(); } } private ElementReference chatMessageRef; protected override async Task OnAfterRenderAsync(bool firstRender) { await JSRuntime.InvokeVoidAsync("scrollToBottom", chatMessageRef); } private void ClickOption(string item) { inputValue = item; } }