Почему в 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 вот репозиторий, создавая шаблон я без примеров страниц выбирал. Может там что то вырезано, что так работает.