10

لماذا قمت ببناء مكتبة shy.js

jQuery

تعرفت على مكتبة (JQuery) عام 2010 ولطالم كانت بالنسبة لي حل سحري لمشاكل العرض المشروط لعناصر صفحة الويب و التلاعب بالعناصر واستطعت بها من كتابة العديد من عناصر واجهات الاستخدام الخاصة بي .

Reactjs

و عند بروز مكتبة ال (React) كانت ثورة قياسية و اسلوب برمجي فريد حيث فصل المسؤوليات لكل عنصر وادارة حالة العرض لم ليكن بحال افضل من الحل الي قدمته هذه المكتبة الرائعة ولا عجب ان ابتكارها اتى من شركة تملك اكثر شبكات التواصل الاجتماعي التي تتمتع بعناصر واجهات استخدام فريدة وثرية وكثيفة الاستخدام .

وبحكم عملي مع العديد من مصممين صفحات الويب والذين يملكون خبرة برمجية قليلة ويجدون ان (JQuery) تلبي احتياجهم واكثر وخصوصا امكانية استخدام اضافات لا محدود وسهولة تعلمها و استنتاج صياغتها عند كتابة شيء مخصص وعزوفهم عن تبني ال (React) بسبب صعوبة الانطلاق مباشرة في اضافة المكتبة لصفحة ويب وتعدد صياغة الامثلة بتقنية مختلفة تزيد التشويش (Jsx,Babel,Typescript) فقررت ان ابني هذه المكتبة الخجولة بدمج اسلوب ال React مع ال JQuery لعلي اجلب المصممين لهذا الاسلوب المتميز وتكتب بالصيغة القياسية للجافا سكريبت (Vanilla Js)

مازالت المكتبة في مراحله المبكرة واتطلع للافادة و المشاركة و الاسهام من كل لديه اهتمام

رابط المكتبة


مرحباً رائد ،

عمل جميل ، احييك عليه.

يبدو أن المشروع في بداياته ، إذن لدي بعض الملاحظات:

  • يستعمل tag اسمه ref ، و هذا ليس قياسياً ، استعمل data-ref بدلاً عنه إلا إذا كان لديك سبب معين لفعل هذا.

  • يقوم بإعادة رسم جميع المحتويات مرة أخرى ، هذا سيء من ناحية الأداء ، رياكت لا يفعل هذا ، يقوم بالمقارنة و يقرر ما يجب تحديثه و ما لا يجب ، يمكنك الاستفادة من ref الذي تضعه ، اتبع state و أين تنتمي ، على الأقل اظهر انذاراً لمن يستعمل عنصر كبير و فيه الكثير من العناصر الأخرى console.warn.

شكرا لك اخي محمد،

بالفعل مازال في بدايته ،

ملاحظاتك ثمينة جدا وانا اعمل بالعفل بشكل مكثف على حل مشكلة اعادة التوليد والتي تحدث فقط عند تكون الحالة من نوع مصفوفة فقط واحاول ان اجد الية بتتبع دقيق للتحولات التي تتم على الحالة داخل مصفوفة و بالتالي اعادة توليد (DOM) المرتبط بالعنصر.

اشكرك مجددا على ارسال الافادة ويسعدنا انا رى لك  PR قريبا :)