我在laravel框架内使用带有vue的filepond。我的文件可以正常上传,并移动到存储目录并返回隐藏在隐藏字段中的路径,但是FilePond并没有更新我的data属性。我尝试了几件事,计算属性,但对我没有任何帮助。不知道我要去哪里错了。这是我的代码:
我的HTML
<file-pond
name="image"
ref="pond"
label-idle="Drop files here..."
instantUpload="true"
imageResizeUpscale="true"
accepted-file-types="image/jpeg, image/png"
server="/api/sliders/uploadImage"
v-bind:files="form.image"
v-on:init="handleFilePondInit"/>
我的脚本:
export default {
data() {
return {
form: new Form({
title: '',
description: '',
image: '',
buttonText: '',
buttonLink: '',
}),
}
},
这是我的控制器文件
public function upload(Request $request)
{
$newFile = request('image');
$slider = component::find(1);
if($request->hasFile('image')) {
$file = $request->file('image');
$slider->image = Storage::put('slider', $file);
$slider->update();
return $slider->image;
}
}
文件一旦上传,就会在此隐藏字段中保存返回的数据。我希望更新数据属性,以便可以用现有的显示文件替换上传的文件。
<input type="hidden" name="image" value="slider/dAovHcI7CrMmfMO589M41p88G57ZZ28e8ffnua2H.jpeg">
非常感谢您的帮助。