Идиоматический c способ выполнения проверки серверной формы VueJS компонентов в Laravel платформе? - PullRequest
1 голос
/ 21 января 2020

Я новичок в Laravel и VueJS. Я построил форму HTML с VueJS и смог передать полезную нагрузку на контроллер Laravel и вернуть соответствующие ошибки проверки в виде объекта JSON. Ниже я покажу свой общий подход, но хотел бы знать, считается ли то, что я сделал, идиоматическим c Laravel + VueJS way?

У меня есть Laravel маршрут и контроллер, подобный этому:

Route::post('/appetizer', 'AppetizerController@store')->name('appetizer.store');

class AppetizerController extends Controller {
   public function store (Request $request) {
     $request->validate([
        "name"=>"required",
        "calories"=>"required"
     ]);
     // Process Credit Card
     // ... ... etc ... ...

     if(!$process_credit_card_success) {
        return response()->json(["errors"=>["credit_card"=>$errors_from_capital_funds_management]]);
     }
   }
}

Я сделал HTML форму, которая полностью VueJS. Я добавил событие отправки, которое делает аксиологические вызовы, подобные этому:

window.axios.post("/appetizer",{
        "name":"Salad"
    }).then(response=>{
        console.log("success",response);
    }).catch(response=>{

        console.log("catch",response.response.data.errors);

        // Update the state/properties of my VueJS components based on response.response.data.errors
});

Я сознательно отправил полезную нагрузку с ошибками формы в контроллер и успешно получил ответ 422 unprocessable entity в моем catch block. Свойство response.response.data.errors содержит все сообщения проверки. Поэтому я буду работать непосредственно с response.response.data.errors, чтобы получать сообщения об ошибках.

Это правильный путь? Должен ли я смотреть прямо на response.response.data.errors вместо какой-либо другой абстракции для сообщений об ошибках?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...