لو شغال على Dashboard او إدارة ملفات أو عاوز تزود شوية سلاسة في تجربة المستخدم لازم تفكر تستخدم Drag & Drop, تخيل المستخدم يسحب ويفلت الحاجة مكان ما يحب من غير تعقيد ولا أزرار كتير.. طب ازاي تعمله بطريقة احترافية من غير وجع دماغ؟ دا اللي هنشرحه انهارده باذن الله.
أولًا: يعني إيه Drag & Drop؟
باختصار هو إن المستخدم يقدر يسحب عنصر ويحطه في مكان تاني سواء كان رفع ملفات او ترتيب مهام أو فرز بيانات وده بيحسن تجربة المستخدم بشكل رهيب.
ثانيًا: إزاي نطبقه في Next.js؟
هنمشي خطوة بخطوة مع react-dnd مكتبة قوية وسهلة:
1️⃣ تثبيت المكتبة:
افتح الترمينال واكتب:
2️⃣ إعداد الـ Drag & Drop Context في الموقع:
📂 components/DndProviderWrapper.js
3️⃣ إنشاء عنصر قابل للسحب (Draggable Item):
📂 components/DraggableItem.js
4️⃣ إنشاء منطقة الإسقاط (Drop Area):
📂 components/DropZone.js
5️⃣ دمج المكونات في الصفحة الرئيسية:
📂 pages/index.js
مراجعة سريعة على اللي عملناه:
في الخطوات اللي فاتت، عرفنا إزاي نضيف Drag & Drop في Next.js بطريقة احترافية وبسيطة باستخدام مكتبه react-dnd
- ثبتنا المكتبة و جهزنا DndProvider عشان نقدر نستخدم الـ Drag & Drop في التطبيق.
- عملنا عنصر قابل للسحب (DraggableItem) بحيث المستخدم يقدر يسحبه بحرية.
- أنشأنا منطقة إسقاط (DropZone) تستقبل العناصر وتنفذ حدث معين عند الإفلات.
- ربطنا كل حاجة ببعضها في الصفحة الرئيسية بحيث التجربة تبقى سلسة وسهلة.
وبكده نكون خلصنا شرحنا عن إزاي نضيف Drag & Drop في Next.js, لوعندك سؤال أو استفسار، اكتب في الكومنتات.
قسم التعليقات