الفرق بين المراجعتين لصفحة: «Sass/selector replace»

من موسوعة حسوب
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>()selector_replace</code> في Sass}}</noinclude> تعيد الدالة <code>selector_replace()‎</code> نسخة جدي...'
 
ط استبدال النص - 'توثيق Sass الرسمي.]' ب'توثيق Sass الرسمي].'
 
(7 مراجعات متوسطة بواسطة 3 مستخدمين غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة <code>()selector_replace</code> في Sass}}</noinclude>
<noinclude>{{DISPLAYTITLE: الدالة <code>()selector_replace</code> في Sass}}</noinclude>
تعيد الدالة <code>selector_replace()‎</code> نسخة جديدةً من المحدد <code>‎$selector</code> مع توسعة <code>‎$extendee</code> بواسطة <code>‎$extender</code>. النتيجة تشبه الكود البرمجي التالي:<syntaxhighlight lang="sass">
تبدِّل الدالة <code>selector_replace()‎</code> المعامل <code>‎$replacement</code> مكان نُسخ (instances) المعامل <code>‎$original</code> أينما وجدت في المحدِّد <code>‎$selector</code> المعطى.
$selector { ... }
$extender { @extend $extendee }
</syntaxhighlight>


تعمل الدالة عبر استخدام القاعدة <code>[[Sass/@ rules#.D8.A7.D9.84.D9.82.D8.A7.D8.B9.D8.AF.D8.A9 .E2.80.8E.40extend|‎@extend]]</code> واستبعاد المحدِّد الأصلي. هذا يعني أنّه يمكن استخدامها للأداء عمليات تبديل معقدة.
== البنية العامة ==
== البنية العامة ==
<syntaxhighlight lang="sass">
<syntaxhighlight lang="sass">
selector_replace($selector, $extendee, $extender)
selector_replace($selector, $original, $replacement)
</syntaxhighlight>
</syntaxhighlight>


سطر 13: سطر 11:


=== <code>‎$selector</code> ===
=== <code>‎$selector</code> ===
المحدد الذي سيُوسع داخلَه المحدد <code>‎$extendee</code> بواسطة <code>‎$extender</code>. يمكن أن يكون عبارةً عن سلسلة نصية أو قائمة من السلاسل النصية أو قائمة من قوائم السلاسل النصية كما تُعاد من قبل <code>&</code>.
المحدِّد الذي سيُبدَّل داخله المحدَّد <code>‎$original</code> مع المحدِّد <code>‎$replacement</code>. يمكن أن يكون عبارةً عن سلسلة نصيَّة أو قائمة من سلاسل نصيَّة أو قائمة من قوائم من سلاسل نصيَّة كما تُعاد باستعمال الرمز <code>[[Sass/SassScript#.D8.A7.D9.84.D8.B1.D9.85.D8.B2 .26 .D9.81.D9.8A SassScript|&]]</code>.


=== <code>‎$extendee</code> ===
=== <code>‎$original</code> ===
المحدد الذي سيُوسع. يمكن أن يكون عبارةً عن سلسلة نصية أو قائمة من السلاسل النصية أو قائمة من قوائم السلاسل النصية كما تُعاد من قبل <code>&</code>.
المحدِّد المراد استبداله. يمكن أن يكون عبارةً عن سلسلة نصيَّة أو قائمة من سلاسل نصيَّة أو قائمة من قوائم من سلاسل نصيَّة كما تُعاد باستعمال الرمز <code>[[Sass/SassScript#.D8.A7.D9.84.D8.B1.D9.85.D8.B2 .26 .D9.81.D9.8A SassScript|&]]</code>.


=== <code>‎$selector</code> ===
=== <code>‎$replacement</code> ===
المحدد الذي سيُسلَك داخلَ المحدد <code>‎$selector</code>. يمكن أن يكون عبارةً عن سلسلة نصية أو قائمة من السلاسل النصية أو قائمة من قوائم السلاسل النصية كما تُعاد من قبل <code>&</code>.
المحدِّد الذي سيحل مكان المحدِّد <code>‎$original</code> أينما وجد. يمكن أن يكون عبارةً عن سلسلة نصيَّة أو قائمة من سلاسل نصيَّة أو قائمة من قوائم من سلاسل نصيَّة كما تُعاد باستعمال الرمز <code>[[Sass/SassScript#.D8.A7.D9.84.D8.B1.D9.85.D8.B2 .26 .D9.81.D9.8A SassScript|&]]</code>.


== القيم المعادة ==
== القيم المعادة ==
قائمة من قوائم السلاسل النصية التي تمثل نتيجة التوسعة. وتكون بنفس التنسيق الذي يكون لمحدّد تُعيده <code>&</code>.
تُعاد قائمة من قوائم من سلاسل نصيَّة التي تمثل نتيجة التوسعة، ويكون تنسيقها بنفس تنسيق المحدّد المُعاد باستعمال الرمز <code>[[Sass/SassScript#.D8.A7.D9.84.D8.B1.D9.85.D8.B2 .26 .D9.81.D9.8A SassScript|&]]</code>.


== الأخطاء والاستثناءات ==
== الأخطاء والاستثناءات ==
سيُرمى الخطأ <code>ArgumentError</code> إن فشلت التوسعة.
سيُرمى الخطأ <code>ArgumentError</code> إن فشلت عمليَّة الاستبدال.
 
== مثال ==
مثال عن استخدام الدالة <code>selector_replace()‎</code>:<syntaxhighlight>
selector-extend(".a .b", ".b", ".foo .bar") => .a .b, .a .foo .bar, .foo .a .bar


== أمثلة ==
أمثلة نموذجية عن استخدام الدالة <code>selector_replace()‎</code>:<syntaxhighlight lang="sass">
selector_replace(".foo .bar", ".bar", ".baz"); // ".foo .baz"
selector_replace(".foo.bar.baz", ".foo.baz", ".qux"); // ".bar.qux"
</syntaxhighlight>
</syntaxhighlight>


== انظر أيضًا ==
== انظر أيضًا ==
* الدالة <code>[[Sass/selector append|selector_append()]]</code>‎: تضيف المحددات إلى بعضها بعضًا دون مسافات بينها.
* الدالة <code>[[Sass/selector append|selector_append()]]</code>‎: تضيف المحدِّدات إلى بعضها بعضًا دون مسافات بينها.
* الدالة <code>[[Sass/selector nest|selector_nest()]]</code>‎: تُشعّب المحددات.
* الدالة <code>[[Sass/selector nest|selector_nest()]]</code>‎: تُشعّب المحدِّدات.
* الدالة <code>[[Sass/selector unify|selector_unify()]]</code>‎: تُوحّد محددَيْن.
* الدالة <code>[[Sass/selector unify|selector_unify()]]</code>‎: تُوحّد محدِّدين.
* الدالة <code>[[Sass/selector extend|selector_extend()]]</code>‎: توسّع محدِّدًا معيَّنًا.
* الدالة <code>[[Sass/is superselector|is_superselector()]]</code>‎: تتحقَّق ما إذا كان المحدِّد فائقًا.


== مصادر ==
== مصادر ==
* [https://sass-lang.com/documentation/Sass/Script/Functions.html#selector_replace-instance_method قسم الدالة selector_replace في صفحة الدوال في توثيق Sass الرسمي.]
* [https://sass-lang.com/documentation/Sass/Script/Functions.html#selector_replace-instance_method قسم الدالة selector_replace في صفحة الدوال في توثيق Sass الرسمي].
[[تصنيف:Sass]]
[[تصنيف:Sass|{{SUBPAGENAME}}]]
[[تصنيف: Sass Function]]
[[تصنيف: Sass Function|{{SUBPAGENAME}}]]

المراجعة الحالية بتاريخ 07:01، 20 مايو 2018

تبدِّل الدالة selector_replace()‎ المعامل ‎$replacement مكان نُسخ (instances) المعامل ‎$original أينما وجدت في المحدِّد ‎$selector المعطى.

تعمل الدالة عبر استخدام القاعدة ‎@extend واستبعاد المحدِّد الأصلي. هذا يعني أنّه يمكن استخدامها للأداء عمليات تبديل معقدة.

البنية العامة

selector_replace($selector, $original, $replacement)

المعاملات

‎$selector

المحدِّد الذي سيُبدَّل داخله المحدَّد ‎$original مع المحدِّد ‎$replacement. يمكن أن يكون عبارةً عن سلسلة نصيَّة أو قائمة من سلاسل نصيَّة أو قائمة من قوائم من سلاسل نصيَّة كما تُعاد باستعمال الرمز &.

‎$original

المحدِّد المراد استبداله. يمكن أن يكون عبارةً عن سلسلة نصيَّة أو قائمة من سلاسل نصيَّة أو قائمة من قوائم من سلاسل نصيَّة كما تُعاد باستعمال الرمز &.

‎$replacement

المحدِّد الذي سيحل مكان المحدِّد ‎$original أينما وجد. يمكن أن يكون عبارةً عن سلسلة نصيَّة أو قائمة من سلاسل نصيَّة أو قائمة من قوائم من سلاسل نصيَّة كما تُعاد باستعمال الرمز &.

القيم المعادة

تُعاد قائمة من قوائم من سلاسل نصيَّة التي تمثل نتيجة التوسعة، ويكون تنسيقها بنفس تنسيق المحدّد المُعاد باستعمال الرمز &.

الأخطاء والاستثناءات

سيُرمى الخطأ ArgumentError إن فشلت عمليَّة الاستبدال.

أمثلة

أمثلة نموذجية عن استخدام الدالة selector_replace()‎:

selector_replace(".foo .bar", ".bar", ".baz"); // ".foo .baz"
selector_replace(".foo.bar.baz", ".foo.baz", ".qux"); // ".bar.qux"

انظر أيضًا

  • الدالة selector_append()‎: تضيف المحدِّدات إلى بعضها بعضًا دون مسافات بينها.
  • الدالة selector_nest()‎: تُشعّب المحدِّدات.
  • الدالة selector_unify()‎: تُوحّد محدِّدين.
  • الدالة selector_extend()‎: توسّع محدِّدًا معيَّنًا.
  • الدالة is_superselector()‎: تتحقَّق ما إذا كان المحدِّد فائقًا.

مصادر