我一直在制作一个Web应用程序,前端使用Angular,后端使用Laravel。除了文件上传,一切都很好。我的网络应用程序是视频平台,因此我需要上传文件。
我在这个问题上停留了一段时间,这对我的应用程序至关重要。我试图用角度的Reactive形式上传,而Laravel没有得到任何数据。我也尝试过使用Angular Forms,它可以获取其他数据,但不能获取文件。
我正在考虑做一些没有棱角的形式。但是随后会出现一些其他问题,例如,单击提交后如何重定向。
这就是我现在拥有的。
// This is the form
public form = {
email: null,
username: null,
password: null,
password_confirmation: null,
logo: null
};
// This function is called when a file input change and then take the file and save it to the form
onImageSelected(event){
this.form.logo = <File>event.target.files[0];
}
onSubmit(){
// This just send the form to the api and wait for a response.
this.jarwisService.signup(this.form).subscribe(
data => this.handleResponse(data),
error => this.handleError(error)
);
}
这是我得到的错误
errors: {logo: ["The logo field is required."]}
如果任何人都可以与我共享一个很好的教程,或者知道如何将文件从angular上传到laravel,我将非常满意。