React-dnd: كيف تتحقق عند عدم التمرير فوق هدف إسقاط

تم إنشاؤها على ٢٢ يناير ٢٠١٦  ·  2تعليقات  ·  مصدر: react-dnd/react-dnd

أحاول إيقاف إجراءات إعادة التشغيل التي تساعد في تتبع حالات DnD المختلفة على مستوى العالم. أحتاج إلى معرفة ما إذا كان السحب يحدث وما هو نوع الهدف (من الناحية المثالية بالضبط أي هدف) يتم تحريكه. يعد اكتشاف السحب أمرًا سهلاً بدرجة كافية باستخدام مواصفات المصدر ، لكن لا يمكنني معرفة كيفية اكتشاف التحويم على الهدف. إنه يحتوي على طريقة "hover" في المواصفات ، ولكن هذا يعمل باستمرار ، وبقدر ما أستطيع أن أقول أنه لا توجد طريقة لمعرفة متى يتوقف التحويم. يمكنني استخدام المهلة ولكن هذا يبدو أقل من مثالي. لقد فكرت في التفاف منطقة التطبيق الرئيسية في DropTarget واستخدام فحص "سطحي" ، لكن هذا لا يعطي معلومات حول نوع هدف الإسقاط الذي يتم تحريكه. أظن أن هناك طريقة ما يمكنني من خلالها استغلال سياق DnD لكنني لم أتعمق في ذلك الحد.

question

التعليق الأكثر فائدة

يمكنك استخدام أساليب دورة حياة componentWillReceiveProps وإطلاق إجراء عند nextProps.isOver !== this.props.isOver . ستحتاج إلى إضافة isOver: monitor.isOver() إلى دالة DropTarget collect() .

ال 2 كومينتر

قد أكون قادرًا على ربط أحداث onDrag* الخاصة بي للقيام بما أحتاجه. يضيف ترابطًا بسيطًا بين كود تطبيقي و react-dnd ، من حيث الافتراضات حول خلفية السحب التي أستخدمها. لكن ربما يكون جيد.

يمكنك استخدام أساليب دورة حياة componentWillReceiveProps وإطلاق إجراء عند nextProps.isOver !== this.props.isOver . ستحتاج إلى إضافة isOver: monitor.isOver() إلى دالة DropTarget collect() .

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات