Перетащите только изображение загрузки - PullRequest
0 голосов
/ 19 апреля 2019

Не файл, я хочу просто перетащить изображение с помощью перетаскивания. Я думал, что сделаю это в соответствии с расширением картины, но Я понятия не имею, как это сделать

пример:

*ngIf="list.file.name.split('.').pop() == 'png'" 

Можете ли вы сказать мне, если есть другой способ? можешь рассказать как?

HTML-код:

<div method="post" >
                        <div (drop)="ondrop($event)" (dragover)="ondragover($event)"  (dragend)="ondragend($event)" id="holder1">
                            <div class="scrollbar style-1">
                                <div id="fileDragName" class="input-div-image">

                                    <input name="dragAndDrop" (change)="handleFileSelect($event)" id="filesMain"  type="file"  required="required" multiple="multiple"  />
                                    <h3  class="yazi"> Drag and drop or <h3 class="turuncu-renk"> selected file </h3>

                                    </h3>
                                    <li  *ngFor="let list of deneme; let i = index">

                                            <div >
                                              {{list.file.name.split('.').slice(0, -1).join('.')}}
                                            </div>                                           

                                            <div id="progress" class="progress-style" >
                                                <p-progressBar *ngIf="list.progressDurumu" [value]="list.percantage"></p-progressBar>
                                            </div>
                                        </div>
                                    </li>
                                </div>
                            </div>

                        </div>
                    </div>

.ts код:

    ondragover(ev) {
        const holder = document.getElementById('holder1');
        holder.className = 'hover'
        return false;
    }
    ondragend(ev) {
        const holder = document.getElementById('holder1');
        holder.className = ''
        return false;
    }
    ondrop(e) {
        const holder = document.getElementById('holder1');
        holder.className = ''
        e.preventDefault();
        this.readfiles(e.dataTransfer.files);
        this.imageUpload();
    }
    readfiles(files) {
        this.files = files;
    }
    handleFileSelect(evt) {
        this.files = evt.target.files;
        this.imageUpload();
    }

    imageUpload() {

        setTimeout(() => {
            this.progress.percentage = 0;
            this.sonuc = this.files;
            for (let i = 0; i < this.sonuc.length; i++) {
                this.deneme.push({file: this.sonuc[i] , percantage: 0 , output: null });
                this.currentFileUpload = this.sonuc[i];

                const reader = new FileReader();
                reader.onload = (event: any) => {
                    this.deneme[this.deneme.length - this.sonuc.length + i].output = event.target.result;
                };
                reader.readAsDataURL(this.sonuc[i]);

                this.userService.imageCreate(this.currentFileUpload).subscribe(event => {
                    if (event.type === HttpEventType.UploadProgress  ) {
                        this.deneme[this.deneme.length - this.sonuc.length + i].percantage = Math.round(event.loaded / event.total * 100 );
                    } else if (event instanceof HttpResponse )  {
                        setTimeout(() => {
                            this.deneme[this.deneme.length - this.sonuc.length + i].progressDurumu = false;
                            console.log('Upload images!');
                        }, 500); }
                });
            }
        }, 51);
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...