2016-02-01 15 views
12

मैं कोणीय 2 में अपलोड घटक बना रहा हूं और मैं समस्या में ठोकर खा रहा हूं। (drop) घटना काम नहीं कर रही है। यह मेरा कार्यान्वयनड्रॉप इवेंट काम नहीं कर रहा है 2

<div 
class="input-upload" 
*ngIf="status != 'finished'" 
(drop)="onDrop($event)" 
(dragenter)="dragenter()" 
(dragleave)="dragleave()" 
(dragover)="dragover()" 
[ngClass]="{'drag-over': dragOver | async}" 
> 

onDrop(event: any) { 
event.preventDefault(); 
event.stopPropagation(); 
console.log(event) 
} 

क्या मैं कुछ गलत कर रहा हूं? मैंने (drop) ईवेंट में गैर मौजूदा फ़ंक्शन भी डाला और कोणीय त्रुटि नहीं दे रहा है।

उत्तर

17

AFAIR आपको event.preventDefault() को dragOver(event) पर कॉल करने की आवश्यकता है ताकि ब्राउज़र को सूचित किया जा सके कि वर्तमान में अवरुद्ध तत्व वैध ड्रॉप लक्ष्य है।

भी देखें https://developer.mozilla.org/en-US/docs/Web/Events/drop

2

अपने dragover पर इस जोड़ सकते हैं और dragend

वापसी झूठी;

@He पहले से ही कर रही है जो आपने कहा है

+1

वह 'onDrop' में यह क्या कर रही है, लेकिन नहीं में' dragOver() ' –

+1

समझ गया। क्षमा करें कि वह नहीं देखा था। इसके साथ, उसे अभी भी झूठी –

+0

[event.preventDefault() बनाम झूठी वापसी की आवश्यकता हो सकती है] (http://stackoverflow.com/questions/1357118/event-preventdefault-vs-return-false) पढ़ने के लायक है। – Jared

संबंधित मुद्दे