В контроллере у меня есть метод, где я проверяю запрос. У меня есть и пользовательская ошибка, см. код:
public function createComment(Request $request) {
$request->validate(['body' => 'string|min:10', 'type' => 'integer']);
if ($this->lastComment(Auth::user()->id)) {
return response()->json(['errors' => 'Please try after 24 hours..'], 422);
} else {
$comment = Comment::create($request->all());
return $comment;
}
}
В vue у меня есть аксиомы:
axios.post('/createReview', {
body: this.body,
user_id: this.user_id,
type: this.type,
}).then(response => {
this.$emit('created', response.data);
}).catch(error => {
this.isLoading = false;
this.flash(error.response.data, 'error');
});
Как я могу правильно отправить эти ошибки на флэш-память компонента? Когда я получаю сообщение об ошибке компонента, я получаю [Object object]. Я использую этот флеш-пакет: https://www.npmjs.com/package/vue-flash-сообщение






Этот компонент будет отображать только одно сообщение за раз, и вы передаете ему объект.
this.flash(error.response.data.errors, 'error');
Вы можете объединить их в строку, например. error.response.body.join(', ') или зациклить их. В форме я бы так не поступил. Я бы отображал ошибки под каждым полем.
В ошибках может быть сообщение, а может быть
errors.body,errors.type, где сообщения проверки