Почему в Blazor очищаются поля при нажатии кнопки?

@page "/"
@using System.ComponentModel.DataAnnotations
<PageTitle>Авторизация</PageTitle>

<EditForm Model="@loginModel" FormName="LoginForm" OnValidSubmit="HandleLogin">
    <DataAnnotationsValidator />
  
    <div class="login-container">
        <h2>Добро пожаловать ?</h2>
        <p>Пожалуйста, войдите в систему</p>

        <div class="form-group">
            <label for="email">Email</label>
            <InputText id="email" maxlength="50" @bind-Value="loginModel.Email"
                      
            class="form-control" />
            <ValidationMessage For="@(() => loginModel.Email)" />
        </div>

        <div class="form-group">
            <label for="password">Пароль</label>
            <InputText id="password" @bind-Value="loginModel.Password"
                  
                       type="password" class="form-control" maxlength="50" />
            <ValidationMessage For="@(() => loginModel.Password)" />
        </div>
       
        <button type="submit" class="btn-login">Войти</button>
       
    </div>
</EditForm>

@code {
  
    private string message;

    private void HandleLogin()
    {
        message = $"Добро пожаловать, {loginModel.Email}!";
    }

    public class LoginModel 
    {
        
        [Required(ErrorMessage = "Введите почту")]
        [EmailAddress(ErrorMessage = "Некорректный email")]
        public string Email { get; set; }

        [Required(ErrorMessage = "Введите пароль")]
        [MinLength(6, ErrorMessage = "Пароль не должен быть меньше 6 символов")]
        public string Password { get; set; }

    }

    private LoginModel loginModel = new();
}

https://github.com/crushednat123/test вот репозиторий, создавая шаблон я без примеров страниц выбирал. Может там что то вырезано, что так работает.


Ответы (0 шт):