Làm cách nào để chuyển một mảng tới Twig?

Bộ lọc cành để hợp nhất các mảng với

{# Twig data required by JS on this page is then put in extra_data #}

{% block twig_to_js_data %}
    {% include '_twig_to_js_data.html.twig' with {
        extra_data: {
            csrfTokenYourPage: csrf_token['your_page'],
            pathToYourSecondPage: path['your_second_page']
        }
    } %}
{% endblock %}
2 thay vì
{# Twig data required by JS on this page is then put in extra_data #}

{% block twig_to_js_data %}
    {% include '_twig_to_js_data.html.twig' with {
        extra_data: {
            csrfTokenYourPage: csrf_token['your_page'],
            pathToYourSecondPage: path['your_second_page']
        }
    } %}
{% endblock %}
3. Cần thiết để ngăn bộ lọc Twig
{# Twig data required by JS on this page is then put in extra_data #}

{% block twig_to_js_data %}
    {% include '_twig_to_js_data.html.twig' with {
        extra_data: {
            csrfTokenYourPage: csrf_token['your_page'],
            pathToYourSecondPage: path['your_second_page']
        }
    } %}
{% endblock %}
4 ghi đè các khóa chuỗi twig_to_js_global_data nếu extra_data có các khóa giống hệt nhau [e. g. cả hai đều có khóa
{# Twig data required by JS on this page is then put in extra_data #}

{% block twig_to_js_data %}
    {% include '_twig_to_js_data.html.twig' with {
        extra_data: {
            csrfTokenYourPage: csrf_token['your_page'],
            pathToYourSecondPage: path['your_second_page']
        }
    } %}
{% endblock %}
5]

thiết lập cơ bản

Thêm cái này vào _base của bạn. html. cành cây, có lẽ ngay trước

{# Twig data required by JS on this page is then put in extra_data #}

{% block twig_to_js_data %}
    {% include '_twig_to_js_data.html.twig' with {
        extra_data: {
            csrfTokenYourPage: csrf_token['your_page'],
            pathToYourSecondPage: path['your_second_page']
        }
    } %}
{% endblock %}
6

{% block twig_to_js_data %}
    {% include '_twig_to_js_data.html.twig' %}
{% endblock %}

trang của bạn. html. cành cây

{# Twig data required by JS on this page is then put in extra_data #}

{% block twig_to_js_data %}
    {% include '_twig_to_js_data.html.twig' with {
        extra_data: {
            csrfTokenYourPage: csrf_token['your_page'],
            pathToYourSecondPage: path['your_second_page']
        }
    } %}
{% endblock %}

Giả sử bạn có các biến toàn cục Twig được xác định trong config/packages/twig. khoai mỡ

twig:
  globals:
    globals:
      global_twig_variable_example_one: 'stuff'
      global_twig_variable_example_two: 'stuff2'

_twig_to_js_data. html. cành cây

________số 8_______

Thêm vào nội dung/js/ứng dụng. js

// twig_to_js_data is then parsed into a JS object ready to be used
global.twigData = JSON.parse[$['#twig-to-js-data'].attr['data-twig-to-js']];

nội dung/js/lượt xem/trang của bạn. js

// Now you can retrieve any of the four examples data.

const globalExampleOne = twigData.globalExampleOne; // Contains 'stuff' string defined in config/packages/twig.yaml
const globalExampleTwo = twigData.globalExampleTwo; // Contains 'stuff2' string defined in config/packages/twig.yaml

const csrfToken = twigData.csrfTokenYourPage; // Contains the string generated by csrf_token['your_page'] in templates/your_page.html.twig
const url = twigData.pathToYourSecondPage; // Contains the path generated by path['your_second_page'] in templates/your_page.html.twig

Thiết lập phức tạp [được khuyến nghị]

Bây giờ, giả sử bạn muốn có cấu trúc dữ liệu phức tạp hơn, có thể vì bạn có nhiều dữ liệu Twig để chuyển sang JS trên một trang, your_complex_page. html. cành cây

Làm cách nào để chuyển một mảng tới Twig?

Có liên quan .
Truyền biến cho mẫu trường từ theme_pre process_field[]
Nhận đường dẫn đến nội dung chủ đề trong mẫu Twig
Kết xuất mảng tùy chỉnh theo chủ đề
Cách ghi đè các mẫu cành cây
Ngăn chặn bộ nhớ đệm của biến trong mẫu twig
Chuyển biến tùy chỉnh để chặn. html. cành cây

Tôi có thể viết PHP trong tệp Twig không?

Twig là một công cụ mẫu hiện đại dành cho PHP . Chắc chắn. Twig có chế độ hộp cát để đánh giá mã mẫu không đáng tin cậy. Điều này cho phép Twig được sử dụng làm ngôn ngữ mẫu cho các ứng dụng mà người dùng có thể sửa đổi thiết kế mẫu.

Chủ Đề