الفرق بين المراجعتين ل"Twig/with"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
ط
(إدخال 2.0 تمام المحتوى وانظر أيضًا والتصانيف والمصادر.)
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE: الوسم with في Twig}}</noinclude>
 
<noinclude>{{DISPLAYTITLE: الوسم with في Twig}}</noinclude>
 +
اس{{DISPLAYTITLE: الوسم with في Twig}}تخدم الوسم <code>with</code> لإنشاء نطاق داخلي جديد، ولا تكون المتغيرات المسندة في هذا النطاق مرئية لمن هو خارجه:<syntaxhighlight lang="twig">
 +
{% with %}
 +
    {% set foo = 42 %}
 +
    {{ foo }} {# foo is 42 here #}
 +
{% endwith %}
 +
foo is not visible here any longer
 +
</syntaxhighlight>تستطيع تمرير جدول من المتغيرات التي تريد تعريفها في وسم <code>with</code> بدلًا من تعريف المتغيرات في بداية النطاق. فالمثال أدناه مكافئ للمثال السابق:<syntaxhighlight lang="twig">
 +
{% with { foo: 42 } %}
 +
    {{ foo }} {# foo is 42 here #}
 +
{% endwith %}
 +
foo is not visible here any longer
 +
 +
{# it works with any expression that resolves to a hash #}
 +
{% set vars = { foo: 42 } %}
 +
{% with vars %}
 +
    ...
 +
{% endwith %}
 +
</syntaxhighlight>يكون للنطاق الداخلي وصول إلى سياق النطاق الخارجي افتراضيًا، وتستطيع تعطيل هذا السلوك بإلحاق كلمة <code>only</code> المفتاحية:<syntaxhighlight lang="twig">
 +
{% set bar = 'bar' %}
 +
{% with { foo: 42 } only %}
 +
    {# only foo is defined #}
 +
    {# bar is not defined #}
 +
{% endwith %}
 +
 +
</syntaxhighlight>
 +
 +
==انظر أيضًا==
 +
*[[Twig/intro|مقدمة عن محرك القوالب Twig.]]
 +
*[[Twig/api|Twig للمطورين.]]
 +
==المصادر==
 +
*[https://twig.symfony.com/doc/3.x/tags/with.html صفحة الوسم with من توثيق Twig الرسمي.]
 +
[[تصنيف:Twig]]
 +
[[تصنيف:Twig Tags]]

مراجعة 06:18، 27 أبريل 2021

استخدم الوسم with لإنشاء نطاق داخلي جديد، ولا تكون المتغيرات المسندة في هذا النطاق مرئية لمن هو خارجه:

{% with %}
    {% set foo = 42 %}
    {{ foo }} {# foo is 42 here #}
{% endwith %}
foo is not visible here any longer

تستطيع تمرير جدول من المتغيرات التي تريد تعريفها في وسم with بدلًا من تعريف المتغيرات في بداية النطاق. فالمثال أدناه مكافئ للمثال السابق:

{% with { foo: 42 } %}
    {{ foo }} {# foo is 42 here #}
{% endwith %}
foo is not visible here any longer

{# it works with any expression that resolves to a hash #}
{% set vars = { foo: 42 } %}
{% with vars %}
    ...
{% endwith %}

يكون للنطاق الداخلي وصول إلى سياق النطاق الخارجي افتراضيًا، وتستطيع تعطيل هذا السلوك بإلحاق كلمة only المفتاحية:

{% set bar = 'bar' %}
{% with { foo: 42 } only %}
    {# only foo is defined #}
    {# bar is not defined #}
{% endwith %}

انظر أيضًا

المصادر