Как отображать сообщения об ошибках через Izitoast - PullRequest
0 голосов
/ 11 октября 2019

Я пытаюсь отобразить определенные сообщения об ошибках от контроллера Laravel для пользователя с помощью уведомлений IziToast и перехватчиков axios, он работает до определенного момента, но я не могу получить базовые сообщения об ошибках.

I 'мы пытались настроить валидатор laravel по умолчанию, но он не работает.

Controller code
protected function validator(array $data)
    {
        $validator= Validator::make($data, [
            'name' => ['required', 'string', 'max:255'],
            'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
            'password' => ['required', 'string', 'min:6'],
        ]);
        if($validator->fails()) {
          $error =$validator->errors()->first();
            return response()->json(['message' => $error], 422);
        }
    }

Error Handler
import toast from './toast';

function errorResponseHandler(error) {

  if(error.config.hasOwnProperty('errorHandle') && error.config.errorHandle === false) {
    return Promise.reject(error);
  }

  if(typeof error !== 'undefined'){
     if(error.hasOwnProperty('errorHandle')){
           toast.error(error.response.data.message);
        }
     }
     if(typeof error.response !== 'undefined'){
           //Setup Generic Response Messages
        if(error.response.status === 422){
             toast.error(error.response.data.message);
           }

Toast

const toast = {
    error: (message, title = '') => {
        return iZtoast.error({
            title: title,
            message: message,
            position: 'bottomCenter',
        });
    }

export default toast;

Toast отображает только сообщения первого уровня с сообщениями об ошибках. Как добраться до основных ошибок, таких как «электронная почта уже занята»

...