使用 Vue3 和 Inertiajs 更新 return 数组 ["isTrusted" => true] Laravel

update return array ["isTrusted" => true] Laravel with Vue3 and Inertiajs

我尝试进行 更新 我在 Laravel 8 中进行了 调试像那样:

控制器中的编辑和更新功能

public function edit($categories)
    {
        $categories = new CategoriesResources(Categories::findOrFail($categories));
        $categories->image;
        return Inertia::render('Categories/Edit', [
            'categories' => $categories,
        ]);    
    }

public function update(Request $request, $categories)
    {
        $categories = Categories::find($categories);
        dd($request->img_url);
        die;
    }

Vue 模板

<template>
   <form @submit.prevent="editCat">
      <input id="cat_name" type="text" v-model="category.cat_name" />
      <input @change="newImage" name="img_url" id="img_url" accept="image/*" type="file" />
      <input type="submit" value="update" /> 
   </form> 
</template>

props: {
    errors: Object,
    categories: Object
},

data(){
    return{
       category:{
          cat_id: this.categories.data.cat_id,
          cat_name: this.categories.data.cat_name,
          created_at: this.categories.data.created_at,
          updated_at: this.categories.data.updated_at,
          _method: 'put'
       },
       img_url: null
    }
},

methods:{
   newImage(e){
       this.img_url = e.target.files[0]
   },
   editCat(){
       this.$inertia.put(`/categories/${this.categories.data.cat_id}`,{
           'img_url' : this.img_url,
       });
   }
}

它 return 表单中的数据,但 图像文件有问题 它 return 在更改图像文件并提交后进行调试:

array ["isTrusted" => true]

我在这样的表格中添加了:

<form @submit.prevent="editCat" enctype="multipart/form-data" method="POST">

没有变化

我尝试 return 来自 props 的图像,但没有任何改变

我已经解决了问题

<input @change="newImage( $event.target.files[0] )" />