загрузить данные формы в angular - PullRequest
0 голосов
/ 29 марта 2020

Я загружаю некоторые значения и несколько фотографий. И я сделал две кнопки для загрузки фотографии, каждая загружает одну фотографию. Мои фотографии должны быть под четырьмя. Когда я загружаю formData и нажимаю кнопку отправки. Ошибка, чтобы дать мне. пожалуйста, помогите мне

служба загрузки

  uploadPic(formData) {
let  httpOptions = {

  headers:  new HttpHeaders({
    "Content-Type": "multipart/form-data",
    "skip": "true",
    "Accept": "application/json",
    "Authorization": `Bearer ${this.token.GetToken()}`
  })
}

return this.http.post<any>(`${BASEURL}/api/order/submit`, formData ,httpOptions);

}

pics = [];


onFileSelected(e) {
  const file = < File > e.target.files;
  this.pics.push(file);
}


onFileSelected2(e) {
  const file = < File > e.target.files;
  this.pics.push(file);
}

uploadfile() {

  const formData = new FormData();
  formData.append('product_id', this.product_id[0]);
  formData.append('location_id', this.location_id[0]);
  formData.append('additional_price', this.additional_price[0]);
  formData.append('base_price', this.base_price[0]);
  formData.append('merchant_id', this.merchant_id[0]);
  for (let i = 0; i < this.options.length; i++) {
    const option = this.options[i];
    formData.append('options[]', option[i])
  }

  for (let i = 0; i < this.pics.length; i++) {
    const pic = this.pics[i];
    formData.append('pics[]', pic[i])
  }

  this.uploadService.uploadPic(formData).subscribe(data => {
    console.log(data);
  })

}
<span id="file-button" class="waves-effect waves-light btn-large btn-upload m-left">upload file ( side 1 )
          <input style="display: none;" type="file" multiple="multiple" id="file-input" accept=".jpg,.jpeg,.png,.svg" (change)="onFileSelected($event)"/>
        </span>
<span id="file-button2" class="waves-effect waves-light btn-large btn-upload">upload file ( side 2 )
          <input style="display: none;" type="file" multiple="multiple" id="file-input2" accept=".jpg,.jpeg,.png,.svg" (change)="onFileSelected2($event)"/>
        </span>


<div class="box-pay" *ngFor="let product of products" (click)="uploadfile()">
  <p>pay £ {{product.base_price}}</p>
</div>

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...