如何在Vue.js和Laravel中上载文件数组?

如何在Vue.js和Laravel中上载文件数组?,laravel,vue.js,Laravel,Vue.js,我正在尝试在Laravel和vue.js中上载多个文件,但我不知道我错过了它的实际方式。你能帮帮我吗 谢谢 Vue文件 什么都没有发生 模板截图: 在提交表单之前,如果文件正在推送或不在那里,请执行console.log(this.files)。在onChangeFiles()中,现在在$files=$request->files之前用dd($request)检查请求需要使用foreach循环检查文件数组。在foreach循环中检查文件值 <template> <form

我正在尝试在Laravel和vue.js中上载多个文件,但我不知道我错过了它的实际方式。你能帮帮我吗

谢谢

Vue文件 什么都没有发生

模板截图:


在提交表单之前,如果文件正在推送或不在那里,请执行
console.log(this.files)
。在
onChangeFiles()
中,现在在
$files=$request->files之前用
dd($request)
检查请求需要使用foreach循环检查文件数组。在foreach循环中检查文件值
<template>
  <form @submit.prevent="handleSubmit">
    <label>Course Module PDF</label>
    <input type="file" class="form-control-file" @change="onChangeFiles" />
  </form>
</template>

<script>
export default {
  data() {
    return {
      files: [],
    };
  },
  methods: {
    handleSubmit() {
      let data = new FormData();
      data.append("files[]", this.files);

      axios.post("/add-course", data, {
    headers: {
        'Content-Type': 'multipart/form-data'
    }
  })
        .then(() => {
          this.isLoading = false;
          console.log('Success');
        })
        .catch(error => {
          console.log(error);
          
          
        }
    },
    },
    onChangeFiles(event) {
      let file = event.target.files[0];
      this.files.push(file);
    },
  },
};
</script>
$files = $request->files;

  if (count($files) > 0) {

      foreach ($files as $file) {
          $ext = $file->getClientOriginalExtension();
          $name = time().'-'.".".$ext;
          $upload_path = 'backend/files/';
          $upload_url = $upload_path.$name;
          $file->move(public_path($upload_path),$upload_url);
      }

  }

  return "Success";