文件路径 null,View Js,Laravel,S3

File path null, Vue Js, Laravel, S3

我尝试使用 Vuejs 和 Laravel 创建一个简单的文件上传。但是我的 'b2b_file' 变量似乎为空。在 Vue 组件中我有:

<b-form-file
    v-model="b2b_file"
    name="b2b_file"
    multiple>
</b-form-file>

methods: {
    this.b2b_file.map(element => {
        this.productData.b2b_file.push(element)
    })
}

console.log(this.productData.b2b_file) returns 休闲: https://prnt.sc/1hox1c5

由于当我尝试 $request->file('b2b_file')->store() 时我的控制器中的路径为空,我收到消息:“调用成员函数 store() on null”,异常:“错误”

我做错了什么?

经过一番深入搜索后,我发现我遗漏了一些逻辑,这就是为什么我在控制器中得到 null 的原因。事实证明,在调用控制器之前,在 Vue 组件中我遗漏了这个:

  const formData = new FormData()
const file = this.productData.b2b_file
    formData.append('b2b_file', file)

axios.post('/api/auth/upload_file', formData)
      .then(response => {
        this.file_path = response.data
      })

在另一个 Axios 调用中,我发送了 this.file_path 的值 这样我就得到了文件的路径,并且 $request->file('b2b_file')->store() 可以正常工作