Как показать сообщение maxFileSize при загрузке файла? - PullRequest
0 голосов
/ 22 января 2019

Я использую primeng fileupload

https://www.primefaces.org/primeng/#/fileupload

как это

<p-fileUpload id="btn_uploadImage" accept="image/*" maxFileSize="2000000"
              class="btn btn-primary"
              auto="true"
              mode="basic"
              name="myFile[]" chooseLabel="{{ 'ASSETS.BACKGROUND_IMAGE' | translate}}"
              title="{{'ASSETS.CHANGE_BACKGROUND_IMAGE' | translate}}"
              [url]="apiImageLocation"
              (onUpload)="onUploadImageSuccess($event)" (onError)="onUploadImageError($event)">
</p-fileUpload>

Ограничение maxFileSize работает. Слишком большие файлы не будут загружены, но я никогда не вижу invalidFileSizeMessage. На демонстрационной странице primeng сообщение не отображается в основном режиме ...

Как я могу показать / перевести сообщение о неверном размере файла?

Ответы [ 2 ]

0 голосов
/ 25 января 2019

Нашли решение

<p-fileUpload #fileUpload
              auto="true"
              mode="basic"
              [url]="apiImageLocation" accept="image/*"
              maxFileSize="2097152" (onSelect)="validateFileSize($event, fileUpload.maxFileSize)">
</p-fileUpload>

component.ts

public validateFileSize($event: any, maxFileSize: number): void {
    if ($event.files[0].size > maxFileSize) {
      this.toastService.errorMessage("Action");
    }
  }
0 голосов
/ 22 января 2019

Вам нужно использовать пользовательский режим. Потому что в основном режиме нет содержимого сообщения. Как;

<p-fileUpload name="demo[]" url="./upload.php" (onUpload)="onUpload($event)"
        multiple="multiple" accept="image/*" maxFileSize="100">
</p-fileUpload>

Это сработает.

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