当前我正在使用角度7输入类型=“文件”不工作。
Angular6正常工作。
角度6提交输入文件类型数据
我会得到这样的字段列表
但是角度7只能得到这样的图像路径。
只有我将角度6更新为角度7,我才会收到此错误。 我不知道什么问题。
谢谢,
答案 0 :(得分:1)
我的Angular7应用程序中有一个上传文档部分,这是工作示例:
example.component.html
<form [formGroup]="form">
<div class="form-group">
<label>Select file to upload.</label>
<input type="file" id="bannedList" (change)="onFileChange($event);" #fileInput>
</div>
</form>
<button type="button" (click)="onSubmit();" [disabled]="!fileInput.value" class="btn btn-success pull-right"><i class="fa fa-save fa-fw"></i> Upload File</button>
example.component.ts
import { Component, OnInit, OnDestroy, ElementRef, ViewChild } from '@angular/core';
import { FormBuilder, FormGroup } from "@angular/forms";
...
export class exampleUploadComponent implements OnInit, OnDestroy {
public form: FormGroup;
@ViewChild('fileInput', { read: ElementRef }) private fileInput: ElementRef;
...
createForm() {
this.form = this.fb.group({
bannedList: null
});
}
onFileChange(event) {
this.uploadStatus = 0;
if (event.target.files.length > 0) {
let file = event.target.files[0];
this.form.get('bannedList').setValue(file);
}
}
private prepareSave(): any {
let input = new FormData();
input.append('bannedChequeCustomersFile', this.form.get('bannedList').value);
return input;
}
onSubmit() {
const formModel = this.prepareSave();
this.uploadChequeSubscription = this.chequeOperationService.uploadBannedChequeList(formModel).subscribe(
(res) => {
console.log("res handler:", res);
},
(err) => {
console.log("err handler:", err);
}
);
}
我希望它会有所帮助,谢谢。