الوسم with في Twig

من موسوعة حسوب
< Twig
مراجعة 06:18، 27 أبريل 2021 بواسطة أسامه-دمراني (نقاش | مساهمات) (إدخال 2.0 تمام المحتوى وانظر أيضًا والتصانيف والمصادر.)
اذهب إلى التنقل اذهب إلى البحث

استخدم الوسم 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 %}

انظر أيضًا

المصادر