الفرق بين المراجعتين لصفحة: «Sass/function directives»
إضافة الصفحة |
ط استبدال النص - '\[\[تصنيف:(.*)\]\]' ب'{{SUBPAGENAME}}' |
||
(مراجعتان متوسطتان بواسطة مستخدمين اثنين آخرين غير معروضتين) | |||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE:تعليمات الدوال في Sass}}</noinclude> | |||
يمكن تعريف دوالّ خاصَّةٍ بك في Sass واستخدامها في أيِّ سياق أو على أيّ قيمة داخل الملف البرمجي مثل:<syntaxhighlight lang="sass"> | |||
$grid-width: 40px; | $grid-width: 40px; | ||
$gutter-width: 10px; | $gutter-width: 10px; | ||
سطر 8: | سطر 9: | ||
#sidebar { width: grid-width(5); } | #sidebar { width: grid-width(5); } | ||
</syntaxhighlight>ستُصبح:<syntaxhighlight lang="css"> | </syntaxhighlight>ستُصبح الشيفرة بعد تصريفها:<syntaxhighlight lang="css"> | ||
#sidebar { | #sidebar { | ||
width: 240px; } | width: 240px; } | ||
</syntaxhighlight>لاحظ أنَّه يمكن للدوال الوصول إلى كل المتغيرات | </syntaxhighlight>لاحظ أنَّه يمكن للدوال الوصول إلى كل المتغيرات العامَّة وقبول الوسائط كما تفعل [[Sass/mixins|المخاليط]] (mixins). قد تحتوي الدالة على العديد من العبارات البرمجيَّة، ويجب استدعاء <code>[[Sass/@ rules|@return]]</code> لتعيد الدالة قيمة محدَّدة. | ||
كما هو الحال في | كما هو الحال في [[Sass/mixins|المخاليط]]، يمكنك استدعاء الدوالّ المُعرّفة في Sass باستخدام [[Sass/SassScript#.D8.A7.D9.84.D9.88.D8.B3.D8.A7.D8.A6.D8.B7 .D8.A7.D9.84.D9.85.D8.B3.D9.85.D9.91.D8.A7.D8.A9 .28Keyword Arguments.29|الوسائط المُسمّاة]]. يمكننا في المثال أعلاه استدعاء الدالة بالطريقة التالية:<syntaxhighlight lang="sass"> | ||
#sidebar { width: grid-width($n: 5); } | #sidebar { width: grid-width($n: 5); } | ||
</syntaxhighlight> | </syntaxhighlight>يُستحسن أن تحتوي اسم الدالة على بادئةً معينة لتجنب التداخل في الأسماء ولِيعلّم من يقرأ ملف الأنماط خاصتك أنَّها ليست جزءًا من Sass أو [[CSS]]. إن كنت تعمل مثلًا في شركة تُسمّى Hsoub، فلعلّك ترغب في إعطاء الدالة أعلاه الاسم <code>-hsoub-grid-width</code>. | ||
تدعم الدوال التي يُعرّفها | تدعم الدوال التي يُعرّفها المستخدمين أيضًا [[Sass/mixins#.D8.A7.D9.84.D9.88.D8.B3.D8.A7.D8.A6.D8.B7 .D8.A7.D9.84.D9.85.D8.AA.D8.BA.D9.8A.D8.B1.D8.A9 .28Variable Arguments.29|الوسائط المتغيرة]] تمامًا مثل المخاليط. | ||
لأسباب تاريخية، | لأسباب تاريخية، لا يوجد فرق بين استعمال الشرطات العاديَّة والشرطات السفليَّة في أسماء الدوال (وجميع معرفات Sass الأخرى). إن عَرًفت مثلً دالةً تُسمى <code>grid-width</code>، فيمكنك الإشارة إليها بالاسم <code>grid_width</code> أيضًا، والعكس بالعكس. | ||
==مصادر== | |||
== مصادر == | *[https://sass-lang.com/documentation/file.SASS_REFERENCE.html#function_directives قسم Function Directives من توثيق Sass الرسمي]. | ||
* [https://sass-lang.com/documentation/file.SASS_REFERENCE.html#function_directives قسم Function Directives من توثيق Sass الرسمي]. | [[تصنيف:Sass|{{SUBPAGENAME}}]] |
المراجعة الحالية بتاريخ 07:00، 20 مايو 2018
يمكن تعريف دوالّ خاصَّةٍ بك في Sass واستخدامها في أيِّ سياق أو على أيّ قيمة داخل الملف البرمجي مثل:
$grid-width: 40px;
$gutter-width: 10px;
@function grid-width($n) {
@return $n * $grid-width + ($n - 1) * $gutter-width;
}
#sidebar { width: grid-width(5); }
ستُصبح الشيفرة بعد تصريفها:
#sidebar {
width: 240px; }
لاحظ أنَّه يمكن للدوال الوصول إلى كل المتغيرات العامَّة وقبول الوسائط كما تفعل المخاليط (mixins). قد تحتوي الدالة على العديد من العبارات البرمجيَّة، ويجب استدعاء @return
لتعيد الدالة قيمة محدَّدة.
كما هو الحال في المخاليط، يمكنك استدعاء الدوالّ المُعرّفة في Sass باستخدام الوسائط المُسمّاة. يمكننا في المثال أعلاه استدعاء الدالة بالطريقة التالية:
#sidebar { width: grid-width($n: 5); }
يُستحسن أن تحتوي اسم الدالة على بادئةً معينة لتجنب التداخل في الأسماء ولِيعلّم من يقرأ ملف الأنماط خاصتك أنَّها ليست جزءًا من Sass أو CSS. إن كنت تعمل مثلًا في شركة تُسمّى Hsoub، فلعلّك ترغب في إعطاء الدالة أعلاه الاسم -hsoub-grid-width
.
تدعم الدوال التي يُعرّفها المستخدمين أيضًا الوسائط المتغيرة تمامًا مثل المخاليط.
لأسباب تاريخية، لا يوجد فرق بين استعمال الشرطات العاديَّة والشرطات السفليَّة في أسماء الدوال (وجميع معرفات Sass الأخرى). إن عَرًفت مثلً دالةً تُسمى grid-width
، فيمكنك الإشارة إليها بالاسم grid_width
أيضًا، والعكس بالعكس.