السلام عليكم....
لماذا يجب أن أستختدم React في أمور أستطيع فعلها في HTML ؟
وشكرا.
قبل أن نسأل عن React فلنسأل : لماذا يجب أن أستخدم الجافاسكريبت في أمور أستطيع فعلها في HTML ﻷن React ما هي إلا Javascript Framework.
الجواب هو أننا لا نستخدم javascript في أمور نستطيع فعلها بالـHTML بل في أمور لا تستطيع HTML وحدها فعله مثل إظهار modal عند الضغط على زر أو إظهار رسائل الخطأ الخاصة بالـform validation عند submit أو Ajax وغير ذلك من اﻷمور.
اﻵن بعد أن علمنا لم نستخدم الجافاسكريبت يصير سؤال React أسهل وهو: لماذا نستعمل React في أمور نستطيع حلها بالـvanilla javascript ؟ الجواب: ﻷن الـReact يعطيك طريقة Declarative UI في بناء الواجهات ومثال على ذلك هو Todo List المشهور فبدلاً من أن تقول "عند الضغط على زر كذا أنشئ div ، ضع محتواها إلى كذا وأضفها بعد آخر عنصر" أو "عند الضغط على أيقونة السلة على يمين المهمة قم بالبحث عن المهمة المراد حذفها بخوارزمية ما ثم احذفها من DOM ولا تنسى أن تعدل عداد المهام وغير ذلك"
بدلاً من كل هذا تخبر الـReact : "واجهة Todo list عبارة عن ul وعنصر li من أجل كل مهمة موجودة ضمن متحول state وspan خارج ul يحوي عداد المهام وهو state.tasks.length" بهذه الطريقة يصير حذف مهمة مجرد حذف عنصر من مصفوفة وإضافة مهمة مجرد push وتعديل مهمة مجرد تعديل عنصر داخل مصفوفة وهكذا، هذه الطريقة أسهل بكثير من vanilla javascript ولا يعلم ذلك حق المعرفة إلا من جرب العمل بدون React أو أمثاله.
التعليقات