Я новичок в laravel 5.8 и Vue и использую veeValidate и базовую ФОРМУ для входа в систему, имеющую:
method = "POST " action =" / login "и значения: адрес электронной почты, пароль и _token для csrf_token
и кнопка для отправки, подобная этой:
<v-btn>@click="validate">Login</v-btn>
Когда пользователь нажимает кнопку, вызывается метод vue validate :
methods: {
validate() {
this.$validator.validateAll().then((result) => {
if (result) {
//Manually submit form if not errors
document.getElementById("login_form").submit();
}
})
},
}
Этот метод запускает валидатор veeValidate, а если true , то форма отправляется (POST дляпуть действия).В случае ошибки обновляется предупреждение об ошибках интерфейса (т. Е. Слишком короткие данные или пароль).
Маршрут перенаправляет запрос POST на контроллер Laravel Auth / LoginController @ login , который имеет protected $ redirectTo = '/ welcome';
$ redirectTo - это целевая страница в случае отсутствия ошибок (вход в систему).Но если валидатор терпит неудачу, он перенаправляет на страницу формы, которая перезагружается без предупреждений.
Мне нравится простой поток, но я хотел бы показать причины неудачного бэкэнда (IE: любые отзывы или попытки входа в систему);
Как получить неверный ответ LoginController @ login для отображения сообщения в компоненте vue?