الفرق بين المراجعتين ل"React/faq styling"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
ط (تحديث الصفحة، والعنوان، والتصنيفات)
ط
سطر 38: سطر 38:
 
* [[React/faq state|حالة المكونات]]
 
* [[React/faq state|حالة المكونات]]
 
* [[React/faq structure|بنية ملفات المشروع]]
 
* [[React/faq structure|بنية ملفات المشروع]]
 +
* [[React/faq versioning|سياسة الإصدارات المتبعة في React]]
 
* [[React/faq internals|DOM الافتراضي والكائنات الداخلية]]
 
* [[React/faq internals|DOM الافتراضي والكائنات الداخلية]]
 
==مصادر==
 
==مصادر==

مراجعة 18:00، 24 فبراير 2019

كيف أُضيف أصناف CSS إلى المكوّنات؟

مرِّر سلسلة نصيّة إلى خاصيّة اسم الصنف className:

render() {
  return <span className="menu navigation-menu">القائمة</span>
}

من الشائع أن تعتمد أصناف CSS على خاصيّات أو حالة المكوّنات:

render() {
  let className = 'menu';
  if (this.props.isActive) {
    className += ' menu-active';
  }
  return <span className={className}>القائمة</span>
}

إن وجدت نفسك تكتب شيفرة مثل هذه، فتستطيع الحزمة classnames تبسيطها لك.

هل أستطيع استخدام التنسيقات السطرية (inline)؟

نعم، انظر إلى هذا التوثيق حول التنسيق من هنا.

هل التنسيقات السطرية سيئة؟

تكون أصناف CSS أفضل بشكل عام للأداء من التنسيقات السطرية.

ماذا يعني المصطلح CSS-in-JS؟

يُشير المصطلح CSS-in-JS إلى النمط الذي تُركَّب فيه CSS باستخدام JavaScript بدلًا من تعريفها في الملفّات الخارجيّة. اقرأ من هنا مقارنة بين مكتبات CSS-in-JS.

لاحظ أنّ هذه الوظيفة ليست جزءًا من React ولكن تُزوّدنا بها مكتبات الطرف الثالث. ليس هناك رأي محدّد لمكتبة React حول كيفيّة تعريف التنسيقات. إن كنت مترددًا فأفضل نقطة للبدء هي تعريف تنسيقاتك في ملف ‎*.css منفصل كالعادة والإشارة إليها باستخدام الخاصيّة className.

هل بإمكاني إجراء تحريك في React؟

يُمكِن استخدام React لدعم التحريك. انظر إلى مكتبة React Transition Group ومكتبة React Motion على سبيل المثال.

انظر أيضًا

مصادر