Ошибка: «Запрос отменен» ax ios laravel vuejs - PullRequest
0 голосов
/ 03 апреля 2020

Я хочу добавить функцию, используя laravel и vuejs и топор ios, но это дает мне ошибку Error: "Request aborted". Если я удаляю систему проверки формы и checkForm функция, все это работает хорошо, на самом деле я не Не знаю, что за знак ошибки, что, что за ошибка.

fonction.blade. php

<section id="main-content">
 <section class="wrapper">
  <div class="container" id="app">
   <div id="login-page">
    <div class="form-login">
     <div class="login-wrap">
      <form @submit="checkForm">
        <div v-if="errors.length">
          <div class="alert alert-danger" role="alert">
            <ul>
              <li v-for="error in errors">@{{ error }}</li>
            </ul>
          </div>
        </div>
        <input type="text" class="form-control" id="fonction" name="fonction" v-model="fonction.fonction" placeholder="fonction">
        <br>
        <button class="btn btn-theme" @click="addFonction">AJOUTER FONCTION</button>
      </form>
     </div>
      </div>
    </div>
  </div>
 </section>
</section>
<script src="{{asset('js/vue.js')}}"></script>
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>

vuejs

    <script>
        window.Laravel = {!! json_encode([
            'csrfToken' => csrf_token(),
            'url' => url('/')
        ]) !!};
    </script>

<script>
       var app = new Vue({  
        el: '#app',
        data: {
            errors: [],
            fonctions:[],
            fonction:{
                fonction :''
            }
        },
        methods:{
           checkForm: function (e) {
            if (this.fonction.fonction) {
              return true;
            }
            this.errors = [];
            if (!this.fonction.fonction) {
              this.errors.push('fonction required.');
            }
            e.preventDefault();
          },
            addFonction:function(){
                axios.post(window.Laravel.url+'/addfonction/', this.fonction)
                .then(response => {
                  //console.log(response.data);
                    this.fonctions.unshift(this.fonction);
                    this.fonction={
                            fonction:''
                        }
                })
                .catch(error=>{
                    console.log(error);
                })
            },
            },
    });
</script>

SalarieController. php

public function addFonction(request $request){
      $fonction = new Fonction;
      $fonction->fonction = $request->fonction;
      $fonction->save();
      Response()->json(['etat' => true]);
    }

1 Ответ

0 голосов
/ 20 апреля 2020

Тот же вопрос, возможно, это связано с тегом <form>.
Я решаю для себя заменить <form> этот тег тегом <div>. Также я заменяю все submit события на click события на кнопке.

...