提出後にいるFormDataを()をクリアする方法

ジョン・ワット

私は、ファイルの入力を開発しました。ファイルを検出し、サービスに送信機能が実行され、そのファイルを選択するとき。

私の問題は、フォーマットは常に選択したすべてのファイルを吸収し、決してきれいということです。それはあなたが2枚の画像を選択し、それらの後に削除1つが、私は1を取得し、ですが、一つの画像を削除した後、別のものを挿入した場合...私は3とない2を持つことになり、それらのいずれかがされているので、(2があるはずです削除されました)。問題はFORMDATAは常にすべてを格納していることです。

ファイルが挿入されるたびに明確なformadataする方法はありますか?

例 - Stackblitz

コード

  <input type="file" id="files" (change)="Add($event)">

  formData1 = new FormData();

 Add(event) {
    var anex = event.target.files;

    for (let index = 0; index < anex.length; index++) {
          this.formData1.append('file', anex[index]);
        }  

        this.sendfiles()
  }

  sendfiles(){
    console.log("Clear formdata();")
    console.log(this.formData1)
  }
バークOzturk:

あなたは、新しいファイルを追加する前に、新しいインスタンスとしてあなたFORMDATAをクリアする必要があります。

 Add(event) {
    var anex = event.target.files;
    // Clear form data before appending new ones
    this.formData1 = new FormData();

    for (let index = 0; index < anex.length; index++) {
          this.formData1.append('file', anex[index]);
        }  

        this.sendfiles()
  }

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=27650&siteId=1
おすすめ