مكون إضافي مقابل مكون سمة

متابعةً للنقاش من إعجاب، مرتين:

عذرًا، لم أجرب البحث - أنا شخص فظيع.

ولكن إذا كان هناك مكون إضافي ومكون سمات يقومان (تقريبًا) بنفس الشيء، فما هو الفرق الأكثر أهمية بينهما؟

يحتاج المكون الإضافي إلى إعادة بناء، بالطبع، ولكن هل هناك أي أسباب أخرى تجعل أحدهما خيارًا أفضل من الآخر؟

أولاً، لا يفعل مكون المظهر “Reactions” و “change-like-icon” (يكاد) نفس الشيء.
نعم، يمكنك استخدام مكون “Reactions” لتغيير أيقونة الإعجاب، ولكن الغرض الرئيسي منه هو تقديم ردود فعل متعددة ممكنة، لذا فإن وظيفته أوسع بكثير من مجرد تغيير تجميلي.
يمكن للمكون الإضافي القيام بكل ما يمكن لمكون المظهر القيام به، ولكن لا يمكن لمكون المظهر القيام بكل ما يمكن للمكون الإضافي القيام به.
يتكون المكون الإضافي من تعليمات برمجية من جانب الخادم ومن جانب العميل،
ويتكون مكون المظهر فقط من تعليمات برمجية من جانب العميل ويجب أن يعتمد على التعليمات البرمجية الموجودة من جانب الخادم.

5 إعجابات

هذا صحيح بينهما. لم أفكر كثيرًا، فالتفاعل كان اسمي الأوسط اليوم :joy:
إذًا - في العالم الحقيقي، الإضافات والمكونات لا تفعل نفس الأشياء أبدًا، والسبب الوحيد لاستخدام هذا أو ذاك هو ما يخدمه؟

إعجاب واحد (1)

هذه الصياغة مجردة للغاية لدرجة أن الإجابة على الأرجح هي “نعم”.

5 إعجابات

هذا صحيح، لكن بدا من موضوع آخر أنه كل ما أراده هو فعل ما يفعله مكون السمة ووجود علامة :+1: واحدة بدلاً من :heart:.

إذا كنت بحاجة إلى إجراء تغييرات على Rails (مثل الحاجة إلى تخزين أو استرداد بيانات مختلفة من قاعدة البيانات) فأنت بحاجة إلى مكون إضافي.

إذا كنت تقوم فقط بتغيير الواجهة الأمامية (Ember و CSS) فسيقوم مكون السمة بالخدعة. (قبل فترة، كان الفرق أكثر دقة.)

إذا كان يمكن تحقيق ما تفعله في Ember فقط، فإن مكون السمة أسهل في التثبيت لأنه لا يتطلب إعادة بناء صورة docker.

3 إعجابات

لقد أخذت هذا إلى نهايته المنطقية مع Topic List Previews (TLP).

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

لقد أضفت واحتفظت ببعض الميزات المتقدمة التي تتطلب تغييرات في الواجهة الخلفية في مكون إضافي تكميلي.

مثال جيد آخر هنا هو Guest Gate Theme Component. بدأ هذا كمكون إضافي، ولكنه اتضح أنك لست بحاجة إليه، لذلك تم إعادة ولادته كمكون سمة جديد (سبقت المكونات الإضافية مكونات السمة).

من المحتمل أن تظل هناك مكونات إضافية أو اثنان يمكن تحويلهما إلى مكون سمة (يمكنني التفكير في واحد منهم على رأس القائمة)… ومن المحتمل أن يكون هناك المزيد من المرشحين مع إضافة المزيد من الوظائف إلى واجهة برمجة التطبيقات الأساسية…

3 إعجابات

هذا المكون الإضافي:

تم إنشاؤه لاحقًا كمكون سمة أيضًا:

إعجابَين (2)